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

如何将带www的域名重定向至无www域名?附现有.htaccess配置

解决www域名重定向到非www HTTPS地址的问题

嘿,我来帮你搞定这个重定向需求!你需要实现两个核心目标:一是禁止用户通过www.example.com访问,二是强制所有流量走HTTPS的非www域名(https://example.com)。我给你调整后的完整.htaccess配置,同时拆解每个规则的作用,方便你理解:

RewriteEngine On

# 规则1:将所有www开头的域名重定向到非www的HTTPS地址
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [L,R=301]

# 规则2:将非www的HTTP请求强制重定向到HTTPS
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [L,R=301]

# 保留你原本的去除尾部斜杠规则(如果不需要可以删除)
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]

各规则详解:

  • 规则1:RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 会匹配所有以www.开头的域名([NC]表示忽略大小写,比如WWW.example.com也会被匹配)。RewriteRule则把请求重定向到https://%1/$1,其中%1是捕获到的www.后面的域名(也就是你的example.com),$1是用户请求的路径,确保跳转后路径不会丢失。R=301是永久重定向,对搜索引擎SEO友好,也会让浏览器缓存这个跳转规则。

  • 规则2:专门处理非www的HTTP请求,确保用户直接输入example.com(不带https)时,也会被强制跳转到https://example.com,避免出现HTTP访问的情况。

  • 尾部斜杠规则:这是你原本配置里的功能,保留它可以让非文件夹的请求自动去除尾部斜杠(比如https://example.com/page/会跳转到https://example.com/page),如果不需要这个功能可以直接删除这两行。

注意事项:

  1. 确保你的Apache服务器已经开启了mod_rewrite模块,否则这些规则不会生效。
  2. 测试阶段可以把R=301改成R=302(临时重定向),确认跳转正常后再改回301,避免浏览器缓存错误的跳转规则。
  3. 把这个配置保存到网站根目录的.htaccess文件中,注意文件权限设置为服务器可读(通常是644)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 09:23:48