“客户端被服务器配置拒绝”和“AllowOverride All”

“客户端被服务器配置拒绝”和“AllowOverride All”

我已在虚拟机上安装了 CentOS 6.3 和 Apache 2.2。我正在尝试使用这些 VirtualHosts 设置 LAMP 堆栈:

  • localhost加载路径/var/www/html/
  • lcl.mydomain.com加载路径/var/www/html/dev_lcl/

我在其中httpd.conf添加了:

NameVirtualHost XXX.XXX.XXX.XXX:80

然后我添加了virtualhosts.conf文件:

<VirtualHost XXX.XXX.XXX.XXX:80>
    DocumentRoot /var/www/html/
    ServerName localhost
    <Directory "/var/www/html/">
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    ErrorLog /var/log/httpd/error_log_localhost
    CustomLog /var/log/httpd/access_log_localhost "combined"
</VirtualHost>

<VirtualHost XXX.XXX.XXX.XXX:80>
    DocumentRoot /var/www/html/dev_lcl/
    ServerName lcl.mydomain.com
    <Directory "/var/www/html/dev_lcl/">
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    ErrorLog /var/log/httpd/error_log_dev_lcl
    CustomLog /var/log/httpd/access_log_dev_lcl "combined"
</VirtualHost>

这给了我错误:

客户端被服务器配置拒绝

当我删除AllowOverride All两个ServerNames负载时,但mod_rewrite不起作用但我需要它。我该如何解决这个问题?

答案1

我找到了解决方案。我已添加到.htaccess文件中:

order deny,allow
allow from XXX.XX.

这是造成问题的原因。一旦我删除它,它就工作得很好。

相关内容