You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.htaccess重定向次数过多求助:将example.com转向https://example.com

解决重定向次数过多的问题

嘿,你的.htaccess规则里藏着几个小问题,正是它们导致了浏览器提示的重定向循环,我来帮你拆解并修正:

问题出在哪?

  1. 语法错误导致条件始终成立:第二个RewriteCond %{HTTP_HOST}!^www\. 少了变量和正则模式之间的空格!Apache会把%{HTTP_HOST}!^www\.当成一个不存在的服务器变量,结果这个条件会一直判定为真——哪怕你已经跳转到https://example.com,规则还是会反复触发重定向,形成死循环。
  2. 多余且写错的条件:第三个条件%{HTTP_HOST} ^example.com\.com$ [NC]明显是笔误(多了个.com),而且对你要实现的重定向需求来说完全多余,留着反而可能添乱。

修正后的.htaccess规则

把你现有的代码替换成下面这段:

# 强制跳转到HTTPS的example.com(去掉www)
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
RewriteRule ^ https://example.com%{REQUEST_URI} [R=301,L,NE]

规则说明

  • 第一个条件%{HTTPS} off:抓所有HTTP(非HTTPS)的请求;
  • 第二个条件%{HTTP_HOST} ^www\.example\.com$ [NC]:抓所有以www.example.com为域名的请求([NC]表示不区分大小写);
  • [OR]表示满足任意一个条件就执行重定向:把请求永久跳转到https://example.com加上原请求的路径(%{REQUEST_URI});
  • [L]表示这是最后一条规则,避免后续规则干扰;[NE]表示不转义URL里的特殊字符,保证路径正确。

额外要注意的点

  • 先确认你的服务器已经正确配置了HTTPS(SSL证书有效且安装到位),不然规则对了也可能访问出问题;
  • 测试前一定要清空浏览器缓存,因为301重定向会被浏览器缓存,旧的错误规则可能还会生效;
  • 如果你的站点还有其他重定向规则,把这条放在最前面,避免规则冲突。

内容的提问来源于stack exchange,提问作者vicky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 03:26:14