我将CloudFlare的SSL添加到我的网站 当我使用 www.example.com 进入网站时,一切顺利 但是当我使用 example.com 进入网站时,它不会重定向到HTTPS。
的.htaccess
RewriteEngine On
# RewriteRules
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R=301]
RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
RewriteCond %{REQUEST_URI} !/system/.* [NC]
RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=302,NE,L]
# ErrorDocument
ErrorDocument 404 /404.php
我不太了解htaccess,我希望你能提供帮助 目标是让 http://www.example.com 和 http://example.com 重定向到 https://example.com 。
答案 0 :(得分:2)
使用CloudFlare,使用:
# RewriteRules
RewriteCond %{HTTP_HOST} ^www\. [OR,NC]
RewriteCond %{HTTP:CF-Visitor} '"scheme":"http"'
RewriteRule ^ https://exemple.com%{REQUEST_URI} [NE,R=301,L]
而不是你的第一个RewriteCond,RewriteRule 2行
答案 1 :(得分:0)
将RewriteCondition更改为
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com [NC]
允许 www 或非www