【问题标题】:htaccess redirect 301 ALL to HTTPS + WWW with Cloudflare ONhtaccess 将 301 ALL 重定向到 HTTPS + WWW 并开启 Cloudflare
【发布时间】:2017-01-18 19:15:13
【问题描述】:

有几个关于重定向的问题,但没有一个对我有用。

我需要将所有流量重定向到https://www.kodden.com/

我的子域需要重定向到https://subdomain1.kodden.com.br/

我的网站在 Wordpres 4.7.1 上运行并使用 Cloudflare,我的主机运行 PHP 7.0.7 和 Apache。

我能得到的最好的结果是:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} =http
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [NE,L,R=301]
</IfModule>

但是当我启用 Cloudflare 时,当我转到 https://kodden.comhttp://kodden.com.br(重定向到 https://kodden.com.br 并给我一个重定向循环)时,给我一个重定向循环错误。

缺少什么?

谢谢大家!

最好的问候

【问题讨论】:

    标签: apache .htaccess mod-rewrite https cloudflare


    【解决方案1】:

    在 CloudFlare 中确保您已将 Crypto > SSL 设置为 FullFull (strict)。否则 CF 将通过 http 获取页面,将 301 发送到您的浏览器,浏览器向 cf 请求页面,这将通过 http 获取页面,这....并且您的无限循环!

    【讨论】:

    • 我不是 htaccess 的专家,但我认为问题出在 W 上。您需要带有RewriteCond %{HTTP_HOST} !^www\. 的www。但随后重定向到没有 www 的站点。如果你想要 W,那么你必须在新的 url 中输入它们:RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [NE,L,R=301]
    • 你好 Jules,添加“www”。当我键入 www.site.com.br 时,在最后一个 RewriteRule 上转到 www.www.site.com.br。谢谢。
    猜你喜欢
    • 2017-05-03
    • 2019-08-12
    • 2020-05-27
    • 2019-02-04
    • 2018-07-03
    • 2018-10-19
    • 1970-01-01
    • 2016-01-02
    • 1970-01-01
    相关资源
    最近更新 更多