我有一个网站'www'子域的SSL证书,我们称之为example.com。
因此我可以强制使用SSL,但如果用户未在其浏览器中输入“www.example.com”,则SSL证书似乎无效。
我希望在网站根目录下的.htaccess文件中使用mod_rewrite规则来完成此操作。
无论用户输入什么URI,(例如example.com,www.example.com,https://example.com,example.com / folder / file.html等),我都想强制使用HTTPS < em>和 www子域,保留他们提供的任何URI。当然。
我正在玩.htaccess文件和一些规则,因为我已经做过一些研究,但我对mod_rewrite或.htaccess没有多少经验。我想我发现几乎的SVN版本对我有用,但并不完全。这是:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteCond %{HTTP_HOST} ^example.com [nc]
RewriteRule ^(.*)$ https://www.example.com/$1 [r=301,nc]
尽量不要对我的文件大笑;它主要源于我在网上找到的例子。
任何指针都表示赞赏! =)
答案 0 :(得分:3)
试试这个:
RewriteCond %{HTTPS} !on [OR]
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^ https://www.example.com%{REQUEST_URI} [R=301]