我已在CPanel中设置重定向,以便将所有流量推送到htaccess中的https。 cPanel“添加重定向”选项为https?://(www.)?
,但www部分未使用
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteCond %{HTTP_HOST} ^example\.co.uk [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.co.uk/$1 [R=301,L]
我设法使用下面的代码使www部分工作,但不确定是否仍然需要RewriteEngine On
以及是否还需要cPanel插入的第2行和第3行,因为我从未见过它们在许多htaccess文章。
你能帮我把这个压缩成一个块,它适用于域名和访问的任何页面吗?
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteCond %{HTTP_HOST} ^example\.co.uk [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.co.uk/$1 [R=301,L]
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.example\.co.uk$ [NC]
RewriteRule ^(.*)$ https://www.example\.co.uk/$1 [L,R=301]
答案 0 :(得分:1)
这是工作代码
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]