我在apache2中用反向Proxy+Mod安全性设置了虚拟主机配置。但是它重叠,在重新启动apache2时不会产生任何错误,但是第二个虚拟主机配置与第一个虚拟主机配置重叠。
第一个是工作正常。
我的虚拟主机配置如下:
NameVirtualHost 192.168.1.101:80
<VirtualHost 192.168.1.101:80>
ServerName 124.125.252.31
DocumentRoot /var/www
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyRequests Off
ProxyPass /asd http://124.125.252.31/
ProxyPassReverse /asd http://124.125.252.31/
<Location /asd>
Order deny,allow
Allow from all
</Location>
Include /etc/apache2/rules/modsecurity_crs_10_config.conf
Include /etc/apache2/rules/base_rules/*.conf
</VirtualHost>
<VirtualHost 192.168.1.101:80>
ServerName 124.125.252.32
DocumentRoot /var/www
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyRequests Off
ProxyPass /qwe http://124.125.252.32/
ProxyPassReverse /qwe http://124.125.252.32/
<Location /qwe>
Order deny,allow
Allow from all
</Location>
Include /etc/apache2/rules/modsecurity_crs_10_config.conf
Include /etc/apache2/rules/base_rules/*.conf
</VirtualHost>发布于 2012-03-31 04:43:57
根据最新的ModSecurity参考手册,在配置指令部分:
大多数ModSecurity指令可以在各种Apache指令中使用,如VirtualHost、Location、LocationMatch、Directory等.但是,还有一些只能在主配置文件中使用一次。此信息在下面的作用域部分中指定。下面的版本部分给出了使用给定指令的第一个版本。这些规则以及核心规则文件应该包含在httpd.conf文件之外的文件中,并与Apache“包括”指令一起调用。
我猜想您的配置中的以下行应该直接包含在您的主httpd.conf文件中:
Include /etc/apache2/rules/modsecurity_crs_10_config.conf我猜想可以在虚拟主机中插入以下行:
Include /etc/apache2/rules/base_rules/*.conf但我可能错了。只是配置示例中的某些指令的作用域被指定为"Main“,而不是"Any”(例如,SecComponentSignature只指定一个)。
是什么让你意识到它们是重叠的?你有原木吗?
https://stackoverflow.com/questions/9697963
复制相似问题