【问题标题】:WordPress NOT redirecting from http to https SSLWordPress 未从 http 重定向到 https SSL
【发布时间】:2019-05-17 09:37:30
【问题描述】:

我在 WordPress 设置中有我的 WordPress 地址 (URL) 和我的站点地址作为我的 url:https://example.com/blog,但是当我输入 http://example.com/blog 时,它不会将其重定向到 SSL 版本,即使我有网站地址为 https。

我禁用了所有插件并切换到默认主题,但这仍然会发生。发生这种情况的任何原因或解决方案?

【问题讨论】:

标签: php mysql wordpress .htaccess https


【解决方案1】:

您在安装 SSL 后忘记更新 .htaccess 文件。因此,您应该将以下代码添加到您的 .htaccess 文件中:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

之后,为了对您的网站进行交叉检查,所有页面是否正确重定向到 https,请按照resource 中提到的步骤和使用工具。

【讨论】:

    【解决方案2】:

    您仍然需要将“http”重定向到“https”。

    你有几个选择,这里有几个:

    选项 1

    在您的 .htaccess 文件中,您可以添加:

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

    只需确保将 www.example.com 更改为您的域应该是什么(如果您不需要 www.,则不需要它。)

    选项 2

    将您的 DNS 更改为 CloudFlare(免费)并根据以下内容更改设置: https://support.cloudflare.com/hc/en-us/articles/200170536-How-do-I-redirect-all-visitors-to-HTTPS-SSL-

    但是,如果您想使用 www.我建议使用两个页面规则,以便您可以将 http 重定向到 https 并添加 www。在单个重定向中。在单个重定向中执行这两项操作可能对 SEO 更好。对于这两个页面规则,选择名为“Forwarding URL”和“301”的设置,并制定如下规则:

    http://*example.com/*
    

    https://www.example.com/$2
    

    https://*example.com/*
    

    https://www.example.com/$2
    

    这是假设您没有使用子域。如果是,请告诉我,我可以使用可容纳子域的规则更新答案。

    【讨论】:

    • 使用 cloudflare 的“页面规则” -> 始终使用 https 解决了我的问题。
    猜你喜欢
    • 1970-01-01
    • 2019-04-11
    • 2016-09-01
    • 2013-11-02
    • 2012-10-25
    • 2015-01-01
    • 2018-10-18
    • 2011-04-28
    • 1970-01-01
    相关资源
    最近更新 更多