8

将站点 url http 重定向到 https ..为此,我在我的 cpanl public_html 根目录中上传 .htaccess 文件。文件的代码为

RewriteEngine On  
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://sitename.in/$1 [R,L]

在我托管此文件后,它也没有将我的网站重定向到 https 协议

4

3 回答 3

17

我写这个答案太晚了,但目前它工作正常。因此,请尝试在您的根目录 .htaccess 文件中执行此操作。

# Force SSL
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>

注意:只有mod_rewrite在 cpanel 服务器上安装了它才能工作,否则使用基于 php 的 SSL 重定向。

于 2017-02-01T18:19:38.727 回答
4

我刚刚修改了答案的第一部分中的 .htaccess 文件,以便我的 Wordpress 网站将 http:// 重定向到 https://。我不需要修改索引页面,没有它对我来说效果很好。感谢作者,因为它完成了我对安全证书迁移的追求。

我的完整文件 .htaccess 文件对我来说看起来像这样。我建议制作一个本地副本,因为在我在这里找到适合我的正确答案之前,我破坏了我的网站几次:

#RewriteCond %{HTTP_HOST} ^yoursite\.com [NC]
#RewriteRule (.*) http://www.yoursite.com/$1 [R=301,L]

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

Options +FollowSymlinks

RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.yoursite.com/$1 [R,L]
于 2012-07-01T22:57:13.890 回答
3

我在网站的索引页面中添加了以下代码行

if($_SERVER["HTTPS"] != "on")
{
header("Location: https://" . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]);
exit();
}

然后将站点 url 重定向到 https 链接

于 2012-04-10T10:09:50.170 回答