昨天给公司配置了apache-2.4.9的版本,今天他们要求把虚拟主机配置起好放网站程序,在修改apache-2.4.9的配置文件中,我发现了2.4.x跟以前的2.2.x里面的很多配置都不一样了,比如配置这个虚拟主机都有一些不同,按照以前的配置方法,会报下面的错误:
AH01630: client denied by server configuration: /usr/local/apache/htdocs/recx/

先给大家看看我按照apache-2.2.x配置虚拟机的内容:
NameVirtualHost 192.168.10.81:80

<VirtualHost 192.168.10.81:80>
ServerAdmin rocdk890@gmail.com
directoryIndex  index.html index.php index.htm index.shtml login.php
ServerName 192.168.10.81
DocumentRoot /var/www/vhosts/wwwroot
<Directory "/var/www/vhosts/wwwroot">
    Options -Indexes

    AllowOverride All

    Order allow,deny
    Allow from all

</Directory>
</VirtualHost>

然后下面是apache-2.4.x配置虚拟机的内容:
<VirtualHost 192.168.10.81:80>
ServerAdmin rocdk890@gmail.com
directoryIndex  index.html index.php index.htm index.shtml login.php
ServerName 192.168.10.81
DocumentRoot /var/www/vhosts/wwwroot
<Directory "/var/www/vhosts/wwwroot">
    Options -Indexes

    AllowOverride All

    Require all granted
</Directory>
</VirtualHost>

可以看到apache-2.4.x把NameVirtualHost给取消,现在配置虚拟主机不需要再配置NameVirtualHost了.
删除了 Order deny,allow 和 Order allow,deny
把 Deny from all 替换成了 Require all denied
把Allow from all 替换成了 Require all granted
然后还把 Allow from 192.168.10.21 这样的语句给替换成了 Require host 192.168.10.21

posted on 2014-12-18 22:57  sidesky  阅读(2984)  评论(0编辑  收藏  举报