php - WordPress SSL 通过 Cloudflare 重定向

标签 php wordpress .htaccess ssl redirect

我已将我的网站添加到 Cloudflare 以使用灵活的 SSL。静态内容上的一切都可以。例如,我可以使用 https 直接访问我的文件(例如:https://www.samanik.com/logo.png)。 但我无法访问 WordPress 网站。我已经更改了数据库中的 site_url 和 home_url。我已将代码添加到 .htaccess,但是当我在没有 https 的情况下键入我的网站时,它会重定向到 https(如我所愿)。但是,那里什么也没有显示。我收到一个名为 ERR_TOO_MANY_REDIRECTS 的错误,我不知道如何解决这个问题。

这是我的 .htaccess 内容。

# 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

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

谁能帮帮我?

最佳答案

您也可以使用操作 Hook 重定向到 HTTPS

在您的 **functions.php** 中添加以下代码:

function redirectToHTTPS(){
 if($_SERVER['HTTPS']!="on"){
   $redirect= "https://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
    header("Location:$redirect");   
}}
add_action('init','redirectToHTTPS' );

有关详细指南,请查看 here .

关于php - WordPress SSL 通过 Cloudflare 重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45302661/

相关文章:

CSS水平规则为全宽并调整为屏幕尺寸

php - Apache 服务器上的 HTTP 300 多种选择

javascript - 如果选择快速,Ajax 不会填充下拉列表

php - 如果必须刷新表单并重新填充该数据,如何临时存储表单数据?

php - 如何将 XML 文件插入 WordPress 数据库

php - 自动应用或删除 Woocommerce 购物车中特定产品 ID 的优惠券

.htaccess - 仅一页的 HTTPS

javascript - 如何删除url页面上的#id

php - 如何仅使用 php 以我的表单返回结果?

php - 如何在多语言json中执行相似搜索?