我确信我的 .htaccess 文件正在被 Apache 读取,因为我尝试在其中写入随机内容,例如:“sifnoweijf”,因此我的页面无法再显示。
但为什么下面的重写不起作用?
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_METHOD} ^(CONNECT|OPTIONS)
RewriteRule .* - [R=405,L]
- 在 Windows Server 2012 上运行 Apache 2.2.22
- DocumentRoot 中的 .htaccess 文件,例如:“C:/Program Files (x86)/Apache Software Foundation/Apache2.2/htdocs”
httpd.conf配置如下:
选项索引FollowSymLinks
允许覆盖所有
订单允许,拒绝
允许所有
任何人?
答案1
抱歉,大家,重写肯定有效。
正如大家在我的重写条件中所看到的,我正在尝试使用 HTTP 响应代码 405 来响应 CONNECT 和 OPTIONS 请求方法。但我仍然得到响应代码 200。
罪魁祸首是我的网络配置,其中硬件负载平衡器代表网络服务器做出响应。
因此,正确配置负载均衡器可以解决该问题。
案件侦破