重写在 htaccess 中不起作用(apache2.2.22,Windows Server 2012)

重写在 htaccess 中不起作用(apache2.2.22,Windows Server 2012)

我确信我的 .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。

罪魁祸首是我的网络配置,其中硬件负载平衡器代表网络服务器做出响应。

因此,正确配置负载均衡器可以解决该问题。

案件侦破

相关内容