【发布时间】:2017-09-30 07:05:51
【问题描述】:
我试图在 htaccess 中强制使用非 www https,但我发现的每个示例都会引发错误“重定向太多”
我要重定向:
http://www.example.comhttp://example.comhttps://www.example.com
到:
https://example.com
我找到的最佳解释解决方案在这里:
https://simonecarletti.com/blog/2016/08/redirect-domain-http-https-www-apache/
...给出以下示例:
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^ https://example.com%{REQUEST_URI} [L,NE,R=301]
感谢解释,我明白它在做什么,但我仍然遇到同样的错误 - 重定向太多。
我能做的最好的是:
RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]
...当然这不会重定向http://example.com。
我在httpd.conf 中没有设置重定向,在 Plesk 中没有设置。我在 CentOS 6.8、Apache 2.2.15、Plesk 12.5 上。
可能导致问题的原因是什么?
【问题讨论】:
标签: apache .htaccess redirect mod-rewrite