【发布时间】:2020-08-29 17:35:18
【问题描述】:
我有一个托管在 GCP 存储桶上的网站,我使用 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.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 存储桶的根目录中,但没有任何反应。如果我尝试通过http://example.com 访问我的网站,我会收到DNS_PROBE_FINISHED_NXDOMAIN 错误。我尝试使用 ANSI 和 UTF-8 保存 .htaccess,结果相同。
我该怎么做:
- 删除 www.从我的网站使用 .htaccess
- 不带 www 将用户重定向到 https://。
- .htaccess 应该使用什么编码?有关系吗?
这甚至可以通过我的 GCP 存储桶托管静态网站和 cloudflare 提供的 https:// 实现吗?
我尝试通过我的域名注册商的控制面板设置重定向,但他们不支持使用 dns 名称服务器而不是他们自己的默认名称服务器的重定向。
【问题讨论】: