×
新网 > 虚机资讯 > 正文

十周第二次课

摘要: Apache和PHP结合、 Apache默认虚拟主机

1、Apache和PHP结合

配置httpd支持php

•httpd主配置文件/usr/local/apache2.4/conf/httpd.conf

•vim/usr/local/apache2.4/conf/httpd.conf//修改以下4个地方

ServerName

Requirealldenied

AddTypeapplication/x-httpd-php.php

DirectoryIndexindex.htmlindex.php

•/usr/local/apache2.4/bin/apachectl-t//测试语法

•/usr/local/apache2.4/bin/apachectlstart//启动服务

002UASMrzy7605pjKJv15&690.jpg

•netstat-lntp

•curllocalhost

•vim/usr/local/apache2.4/htodcs/test.php//增加如下内容

<?php

echo123;

?>

•curllocalhost/test.php

实例:

第一步:

下面的安装没有报错,仅仅只是提示。

 

 

把提示的信息注销掉,使用fg命令。/ServerName是要搜索的内容。

 

 

 

 

 

 

 

php5和php7容易起冲突。注释掉一个。

 

 

查看httpd有没有开启。

 

pingIP地址,再ping80端口。因为windows没有打开telnet客户端。

 

打开telnet客户端。

 

 

查看端口情况。发现没有80端口。

 

添加80端口。

 

删掉80端口的命令。

 

80端口添加成功了,ctrl+]命令退出来。

 

 

 

 

 

 

-t检查配置语法是否有误。

 

graceful:重新加载配置文件。当配置文件有问题时,加载不成功。

 

Forbidden:不允许访问。

 

 

把allowed改成granted。

 

增加之后,就可以解析了。搜索方式:/AddType

 

搜索方式:/Index

 

之后执行这两条命令。

 

编写一个脚本。1.php

 

 

页面加载出来了,说明php支持解析。

 

 

当加载不出来页面的时候,检查PHP文件,使用命令:vi/usr/local/apache2.4/conf/httpd.conf。

1、查看有没有加载出来php5这个模块;

2、检查配置文件中有没有libphp5.so这个文件;

3搜索AddType中有没AddTypeapplication/x-httpd-php.php。(php之间加上空格)

(1)、

 

(2)、

 

(3)、

 

 

(4)、

 

查看/usr/local/apache2.4/htdocs/目录下有没有这两个文件。

 

修改之后,在加载试一下,

 

 

常见问题:

1、虚拟机是直接启动httpd就能访问,不需要再增加iptables规则,这样也是没事的吧?

答:没事。

2、原因服务器上的80端口没有打开。

 

3、这几个位置都是对的语法检测也没有问题模块也是。怎么模块就是没有加载上去列页面也不是显示。

 

 

 

 

答:/usr/local/apache/bin/apachectl-M就是没有模块加载

如果有开启虚拟主机配置,则需要到虚拟主机配置文件里去看DocumentRoot。

 

 

 

 


2、Apache默认虚拟主机

httpd的默认虚拟主机

•一台服务器可以访问多个网站,每个网站都是一个虚拟主机

•概念:域名(主机名)、DNS、解析域名、hosts

•任何一个域名解析到这台机器,都可以访问的虚拟主机就是默认虚拟主机

•vim/usr/local/apache2/conf/httpd.conf//搜索httpd-vhost,去掉#

•vim/usr/local/apache2/conf/extra/httpd-vhosts.conf//改为如下

<VirtualHost*:80>

ServerAdminadmin@aminglinux.com

DocumentRoot"/data/wwwroot/aming.com"

ServerNameaming.com

ServerAliaswww.aming.com

ErrorLog"logs/aming.com-error_log"

CustomLog"logs/aming.com-access_log"common

</VirtualHost>

<VirtualHost*:80>

DocumentRoot"/data/wwwroot/www.123.com"

ServerNamewww.123.com

</VirtualHost>

•/usr/local/apache2/bin/apachectl–t

•/usr/local/apache2/bin/apachectlgraceful

 

•mkdir-p/data/wwwroot/aming.com/data/wwwroot/www.123.com

•echo"aming.com">/data/wwwroot/aming.com/index.html//网站默认的主页就是index.html

•echo"123.com">/data/wwwroot/123.com/index.html

•curl-x127.0.0.1:80aming.com//这样会去访问aming.com/index.html

•curl-x127.0.0.1:80www.123.com//访问www.123.com

•curl-x127.0.0.1:80www.abc.com

 

•vim/usr/local/apache2.4/conf/extra/httpd-vhosts.conf//把123.com那个虚拟主机编辑成如下内容

<VirtualHost*:80>

DocumentRoot"/data/wwwroot/www.123.com"

ServerNamewww.123.com

<Directory/data/wwwroot/www.123.com>//指定认证的目录

AllowOverrideAuthConfig//这个相当于打开认证的开关

AuthName"123.comuserauth"//自定义认证的名字,作用不大

AuthTypeBasic//认证的类型,一般为Basic,其他类型阿铭没用过

AuthUserFile/data/.htpasswd//指定密码文件所在位置

requirevalid-user//指定需要认证的用户为全部可用用户

</Directory>

</VirtualHost>

•/usr/local/apache2.4/bin/htpasswd-cm/data/.htpasswdaming

•重新加载配置-t,graceful

•绑定hosts,浏览器测试

•curl-x127.0.0.1:80www.123.com//状态码为401

•curl-x127.0.0.1:80-uaming:passwdwww.123.com//状态码为200

实例:

  • 相关专题

免责声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,也不承认相关法律责任。如果您发现本社区中有涉嫌抄袭的内容,请发送邮件至:operations@xinnet.com进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

免费咨询获取折扣

Loading