我已经尝试使用.htaccess中的几个不同的解决方案在我的网站上将HTTP重定向到HTTPS,但没有一个有效。 嗯,实际上如果我直接输入它确实有效:
(仅举例)http://mywebsite.com
进入浏览器地址栏....但如果我尝试以任何其他方式重定向网址,它将无法正常工作。如果我尝试链接到Google http://mywebsite.com/上列出的我的网页,则不会重定向到https://www.mywebsite.com。如果有人从搜索引擎点击指向我页面的链接,我需要它从HTTP重定向到HTTPS。
到目前为止,我已经尝试过:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]
然后我试了......
RewriteCond %{SERVER_PORT} !443
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R,L]
没有用。我还应该尝试什么? (此网站托管在使用apache Web服务器的Web托管服务站点上)。此外,我有一个页面的SSL证书,如果这有任何区别。
答案 0 :(得分:3)
通过httpd.conf
启用mod_rewrite和.htaccess,然后将此代码放在.htaccess
目录下的DOCUMENT_ROOT
中:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
提示:清除浏览器缓存或使用其他浏览器进行测试。