繁体   English   中英

如何在禁止文件上正确应用 RewriteRule?

[英]How to apply RewriteRule properly on forbidden files?

目标

如果请求是http://⋯/.htaccess
显示该文件的内容,
改为显示 ErrorDocument 403,
http://重写为https://

问题

将 URL 重写为https://⋯/403.shtml
而不是所需的https://⋯/.htaccess

细节

ErrorDocument 403 和保护
.htaccess 由 web 托管服务提供商设置。

HTTPS 重写在 .htaccess 文件中设置:

RewriteEngine on
RewriteCond %{HTTPS} !on
RewriteRule .* https://%{HTTP_HOST}/$0 [L,QSA,R=301]
<If "%{HTTPS} != 'on'">
    Require all granted
    RewriteEngine on    
    RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,QSA,R=301]
</If>

.htaccess文件中设置以下内容以重置默认 403 Apache ErrorDocument

ErrorDocument 403 default

ErrorDocument 403 和 .htaccess 的保护由 web 托管服务提供商设置。

看起来主机已将带有绝对 URL 的ErrorDocument指令配置到403.shtml文档,这自然会触发 302 重定向而不是内部子请求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM