新网虚拟主机带 www 跳转到不带 www配置教程_Apache 虚拟主机301规则写法
虚拟主机没有服务器 root 权限,带 www 跳转到不带 www 只能靠目录级配置文件完成。Apache 主机把规则写进 .htaccess,IIS 主机把规则写进 web.config,两者语法不同但目标一致,返回码必须是 301,不能用 302 或 meta refresh。
web.config 做 带 www 跳转到不带 www,带 www 到不带 www:match url="(.*)",conditions 加 input="{HTTP_HOST}" pattern="^www.域名.com$",action type="Redirect" url="http://域名.com/{R:1}" redirectType="Permanent"。旧域名到新域名把 pattern 换成旧域名,url 换成新域名加 {R:1}。
配置参考(IIS 伪静态 + 301 完整示例):
```
<?xml version="1.0" encoding="UTF-8"?>
HTTPS 迁移场景,带 www 跳转到不带 www 要同时处理协议与首选域。Apache 里先判断 SERVER_PORT 不是 443 就跳 HTTPS,再判断 HTTP_HOST 带 www 就跳主域名,两条规则顺序不能反。IIS 里两个 condition 用 logicalGrouping="MatchAll",一次匹配同时满足协议与域名,action 直接跳到 https://主域名/{R:1}。
规则维护建议集中在一个文件,Apache 把所有 301 写在 .htaccess 顶部,IIS 写在 web.config 的 rules 顶部并加 stopProcessing="true"。定期清理过期规则,单文件规则超过 200 条会影响每次请求的匹配性能,可以把批量规则合并成一条正则。
301 规则的正则要写准确,贪婪匹配 .* 容易把不该跳的地址也带走。测试时用 curl 抽查首页、栏目页、内容页、带参数页、静态资源页五种地址,确认只有目标地址被跳转,CSS、JS、图片等静态资源不被 301,否则页面样式会乱。

更新时间:2026-08-31 21:52:24
上一篇:移动端网站打开速度慢优化?移动端网站访问速度慢优化,实测有效