11.14—11.15Apache和PHP结合(上下)11.16-11.17Apache默认虚拟主机

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了11.14—11.15Apache和PHP结合(上下)11.16-11.17Apache默认虚拟主机相关的知识,希望对你有一定的参考价值。

11.14 -11.15Apache和php结合(上下)

1. Windows系统上,打开Telnet 客户端

技术分享图片技术分享图片

勾选:Telnet 客户端

技术分享图片技术分享图片

2. Windows上,检查Linux服务器ip80端口是否打开 ?

C:\Users\VULCAN>telnet 192.168.223.128 80

技术分享图片技术分享图片

3. Linux服务器上打开80端口(必须是httpd已启动) :

[[email protected] ~]# iptables -I INPUT -p tcp --dport 80 -j ACCEPT

(关闭80端口:iptables -D INPUT -p tcp --dport 80 -j ACCEPT )

4. 再次在Windows上,检查Linux服务器ip80端口是否打开 ?

C:\Users\VULCAN>telnet 192.168.223.128 80

快捷键组合退出 Ctrl ]

技术分享图片技术分享图片

5. Windows游览器中,打开Linux服务器ip(如下图):

技术分享图片

6. 修改apache2.4(httpd)配置文件 :

[[email protected] ~]# vim /usr/local/apache2.4/conf/httpd.conf

更改内容1:

Require all granted

技术分享图片

添加内容2:

DirectoryIndex index.html index.php

技术分享图片

添加内容3:

AddType application/x-httpd-php .php

技术分享图片

7. 检查配置文件语法是否正确无误 ?

[[email protected] ~]# /usr/local/apache2.4/bin/apachectl -t

技术分享图片

8. 重新加载配置文件(不会重启服务)

[[email protected] ~]# /usr/local/apache2.4/bin/apachectl graceful

9. 添加一个实验脚本 1.php

[[email protected] ~]# vi /usr/local/apache2.4/htdocs/1.php

添加内容:

<?php

phpinfo();

?>

10. Windows游览器,输入Linux服务器 ip/1.php :

技术分享图片

11. 如果在Windows游览器,解析不出Linux服务器 ip/1.php :

A. 先检查php模块是否加载

[[email protected] ~]# /usr/local/apache2.4/bin/apachectl  -M

(在最下面可以看到)

技术分享图片技术分享图片

B. 再检查libphp5.so文件是否存在

[[email protected] ~]# ls /usr/local/apache2.4/modules/libphp5.so

技术分享图片技术分享图片

C. 再检查(httpd.conf)配置文件中,下图三行是否有添加

[[email protected] ~]# vim /usr/local/apache2.4/conf/httpd.conf

查看下图红框中是否添加:modules/libphp5.so

技术分享图片技术分享图片

查看下图红框中是否添加:index.php

技术分享图片技术分享图片

查看下图红框中是否添加:AddType application/x-httpd-php .php

技术分享图片技术分享图片

12. 安装了php5版本7版本,访问Linux服务器 ip/1.php 解析出的是5版本;此时,把5版本对应行在配置文件中注释掉,打开7版本对应行 :

[[email protected] php-7.1.6]# vim /usr/local/apache2.4/conf/httpd.conf

技术分享图片技术分享图片

13. 检查配置文件语法是否正确无误 ?

[[email protected] ~]# /usr/local/apache2.4/bin/apachectl -t

14. 重新加载配置文件(不会重启服务)

[[email protected] ~]# /usr/local/apache2.4/bin/apachectl graceful

15. Windows游览器中,输入Linux服务器 ip/1.php :

技术分享图片

11.16-11.17Apache默认虚拟主机(上下)

1. 打开Windows系统中hosts文件

路径:C:\Windows\System32\drivers\etc

技术分享图片

2. 用记事本打开Windows系统下的hosts文件 :

自定义设定域名指向ipLinux服务器ip  自定义网址

192.168.223.128  www.abc  www.123.com

(自定义的网址,在windows下访问会跳到前面Linux服务器ip)

技术分享图片

记得保存hosts记事本!!!

3. Windows系统下,查看hosts里设定的网址,是否跳转到Linux 服务器ip

C:\Users\VULCAN>ping www.abc.com

C:\Users\VULCAN>ping www.123.com

技术分享图片技术分享图片

4. 编辑httpd.conf配置文件 :

[[email protected] ~]# vim /usr/local/apache2.4/conf/httpd.conf

搜索:httpd-vhosts关键词,把这行行首#删掉!!!(解除注释

技术分享图片

5. 编辑虚拟主机配置文件

[[email protected] ~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf

更改内容:

<VirtualHost *:80>

   DocumentRoot "/data/wwwroot/abc.com"

   ServerName abc.com

   ServerAlias www.abc www.123.com

   ErrorLog "logs/abc.com-error_log"

   CustomLog "logs/abc.com-access_log" common

</VirtualHost>

<VirtualHost *:80>

   DocumentRoot "/data/wwwroot/111.com"

   ServerName 111.com

   ServerAlias www.example.com

   ErrorLog "logs/111.com-error_log"

   CustomLog "logs/111.com-access_log" common

</VirtualHost>

技术分享图片技术分享图片

DocumentRoot:定义网站根目录

ServerName:指定主域名

ServerAlias:指定别名域名(可以有多个别名域名,同时指向一个ip)

ErrorLog:设定错误日志

CustomLog:设定访问日志

6. 创建上面文件中对应的网站目录 :

[[email protected] ~]# mkdir /data/wwwroot/

[[email protected] ~]# mkdir /data/wwwroot/abc.com/

[[email protected] ~]# mkdir /data/wwwroot/111.com/

7. abc网站目录,创建对应文件 :

[[email protected] ~]# vim /data/wwwroot/abc.com/index.php

添加内容:

<?php

echo "abc.com";

8.111网站目录,创建对应文件 :

[[email protected] ~]# vim /data/wwwroot/111.com/index.php

添加内容:

<?php

echo "111.com";

9. 检查配置文件语法是否正确无误 ?

[[email protected] ~]# /usr/local/apache2.4/bin/apachectl -t

技术分享图片技术分享图片

10. 重新加载配置文件(不会重启服务) :

[[email protected] ~]# /usr/local/apache2.4/bin/apachectl  graceful

11. curl -x的作用

[[email protected] ~]# curl -x192.168.223.128:80 abc.com

技术分享图片

www.123.com 第一个(默认)虚拟主机的主域名

www.baidu.com 没有设定过的域名,

www.baidu.com这种没有设定过的域名,会解析到默认虚拟主机主域名!!!


[[email protected] ~]# curl -x192.168.223.128:80 111.com

技术分享图片

111.com 第二个虚拟主机的主域名

www.example.com 第二个虚拟主机的别名域名

www.baidu.com 没有设定过的域名,

www.baidu.com这种没有设定过的域名,会解析到默认虚拟主机主域名!!!

因此:只有设定过的域名,才能会解析到对应的主域名上,

没设定过得域名,都会解析到默认虚拟主机域名上!!!

以上是关于11.14—11.15Apache和PHP结合(上下)11.16-11.17Apache默认虚拟主机的主要内容,如果未能解决你的问题,请参考以下文章

11.14/11.15 Apache和PHP结合 11.16/11.17 Apache默认虚拟主机

11.14/11.15 Apache和PHP结合 11.16/11.17 Apache默认虚拟主机

11.14/11.15 Apache和PHP结合 11.16/11.17 Apache默认虚拟主机

11.14/11.15 Apache和PHP结合 11.16/11.17 Apache默认虚拟主机

2018.3.1 10周2次课

Apache和PHP结合 Apache默认虚拟主机