我需要编辑我的.htaccess,以便发生以下情况:
theeatalianjob.com -> https://www.theeatalianjob.com
www.theeatalianjob.com -> https://www.theeatalianjob.com
http://www.theeatalianjob.com -> https://www.theeatalianjob.com
以下内容:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
只在HTTP_HOST前添加https://如何编写添加www的if语句。如果失踪?
感谢您的帮助。
答案 0 :(得分:1)
您的回答将做两件事:
www
http
重定向到https
因此,如果网址为http://domain.com
,则会有两个重定向,这对SEO和用户体验也不利。
您可以使用单个规则执行这两种重定向:
RewriteCond %{HTTP_HOST} !^www\. [NC,OR]
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://www.%1%{REQUEST_URI} [R=301,L,NE]
答案 1 :(得分:0)
我想我已经找到了解决自己问题的方法,但可以随意提出更优雅的问题......
RewriteEngine On
RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301]
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]