.htaccess使用GCP托管站点删除www
我有一个网站托管在GCP bucket上,我使用cloudflare进行HTTPS。 如何使用.htaccess文件从所有网站页面中删除www.并将其重定向到HTTPS 基本上,我想要:.htaccess使用GCP托管站点删除www,.htaccess,url,.htaccess,Url,我有一个网站托管在GCP bucket上,我使用cloudflare进行HTTPS。 如何使用.htaccess文件从所有网站页面中删除www.并将其重定向到HTTPS 基本上,我想要: http://www.example.com/ redirect to https://example.com/ https://www.example.com/ redirect to https://example.com/ and any other pages like https://www.exa
http://www.example.com/ redirect to https://example.com/
https://www.example.com/ redirect to https://example.com/
and any other pages like
https://www.example.com/about.html or http://www.example.com/about.html redirect to https://example.com/about.html
我找到了需要添加到网站根目录的.htaccess文件的配置:
捕获所有内容并将www重定向到无www(HTTPS):
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
RewriteRule ^(.*)$ https://example.com$1 [R=301,L]
我用我的域名替换了example.com,将文件放入我的GCP bucket的根目录中,什么也没发生。如果我试图通过访问我的网站,我会得到DNS\u PROBE\u FINISHED\u NXDOMAIN
错误。我尝试用ANSI和UTF-8保存.htaccess,结果相同
我如何:
我尝试通过我的域注册器的控制面板设置重定向,但除了自己的默认dns名称服务器外,它们不支持dns名称服务器的重定向。最简单的解决方案是使用CloudFlare处理HTTPS和www站点重定向 要强制使用HTTPS,请转到CloudFlare设置:
SSL/TLS
=>边缘证书
=>始终在
上使用HTTPS=>
始终使用HTTPS:
将方案为“http”的所有请求重定向到“https”。这适用于
对该区域的所有http请求
要将某些位置重定向到其他位置,可以创建页面规则。参见示例这里可能会有进一步的问题(我已经有一段时间没有处理Apache了),但是您的正则表达式中针对该条件的未替换周期肯定会导致问题。试试这个:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]
当我添加一个页面规则“mydomain.com到www.mydomain.com”或“www.mydomain.com到”mydomain.com“时,它似乎不起作用。mydomain.com不可用,我想这是因为CNAME指向www.mydomain.com。