我有一个关于网址或域重定向的简单问题。我正在查看以前的问题,关于如何使用ssl将URL从http重定向到http到强制。
当我尝试重定向无www时,会显示奇怪的部分。到www。与域名。我尝试了很多方法,但没有一个适合我。有没有人知道为什么?以及如何解决这个问题?
这是我在.htaccess使用的代码:
RewriteCond %{HTTP_HOST} ^mydomain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.mydomain\.com$
RewriteRule ^/?$ "https\:\/\/www\.mydomain\.com\/main" [R=301,L]
另一个奇怪的事情是每当我在没有www的浏览器上输入域名时。有一条错误消息,但是当我插入www时。在域名前面,它当然会重定向为https和wwww。
任何想法?
由于
答案 0 :(得分:2)
你的规则会遇到一个循环。这样做:
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]