apache - www 不会重定向到带有 https 的非 www
问题描述
我的问题是当我输入example.com
或www.example.com
在浏览器中它重定向到https://example.com
但是当我输入https://www.example.com
时它不会重定向到https://example.com
.
我想要任何可能是 url http 或 https 和 www 或非 www,它总是指向https://example.com
.
我已经为 htaccess 文件使用了下面的 url 重写。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]
提前致谢。
解决方案
使用您显示的示例,您能否尝试以下操作。请确保在测试 URL 之前清除浏览器缓存。
还要确保这应该是 .htaccess 文件中的 TOP MOST 规则。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.*) [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [NE,R=301,L]
无论 url 有 http 还是 https 或者 url 有 www 或没有 www,这都应该重定向 url 到没有 www 的 https。
推荐阅读
- entity-framework-core - aspnetboilerplate框架中如何处理大量记录
- javascript - JS Google Cloud 函数错误:Reference.update 失败:第一个参数在属性中包含未定义
- python - 过度拟合问题,验证成功率远低于训练。我能改变什么?
- python - 整个 Python 列表未写入 CSV 文件
- google-cloud-platform - 如何部署具有两个网络接口的 Windows 2016 服务器实例
- android - 如何通过获取 SQLite 数据自动填充编辑文本?
- conemu - conemu - 在新窗口中启动多个命令
- java - Java方法覆盖和继承
- c# - Google Play Custom App Publishing API 在 C# 中发布私有应用
- abap - 如何更改 SAP ABAP 中自定义表的主键值?