咨询热线:4006-75-4006

售前:9:00-23:30    备案:9:00-18:00    技术:7*24h

IIS URL Rewrite 教程:将顶级域名强制跳转到 WWW

2026-04-02 17:56:47 962次

IIS URL Rewrite 教程:将顶级域名强制跳转到 WWW

在 SEO(搜索引擎优化)和品牌规范中,通常希望统一网站的访问入口。最常见的做法是将不带 www 的顶级域名(如 example.com)自动 301 重定向到带 www 的子域名(如 www.landui.com)。

本教程将介绍如何在 IIS 中使用 URL Rewrite 模块 实现这一功能。


1. 前置条件

确保你的服务器已安装 URL Rewrite Module 2.0 或更高版本。

  • 如果未安装,请访问微软官网下载:URL Rewrite Module

  • 安装后无需重启服务器,但可能需要重启 IIS 管理器。


2. 方法一:通过 IIS 管理器图形界面配置(推荐)

这是最直观的方法,适合不熟悉 XML 配置的用户。

步骤 1:打开 IIS 管理器

  1. Win + R,输入 inetmgr,回车。

  2. 在左侧连接面板中,展开服务器节点,点击你要配置的具体网站(例如 Default Web Site 或你的业务站点)。

    • 注意:不要在服务器根节点配置,要在具体的 Site 节点配置。

步骤 2:进入 URL Rewrite

  1. 在中间的功能视图中,找到并双击 URL Rewrite 图标。

步骤 3:添加规则

  1. 在右侧的 Actions (操作) 面板中,点击 Add Rule(s)...

  2. 在弹出的窗口中,选择 Inbound Rules (入站规则) 下的 Blank rule (空白规则)。

  3. 点击 OK

步骤 4:配置规则详情

在右侧的规则编辑界面,按以下参数填写:

  • Name (名称): 输入 Redirect to WWW (方便识别即可)。

  • Match URL (匹配 URL):

    • Requested URL: Matches Pattern

    • Using: Regular Expressions (正则表达式)

    • Pattern: (.*) (匹配所有路径)

  • Conditions (条件):

    • 点击 Add... 按钮。

    • Condition input: {HTTP_HOST}

    • Check if input string: Matches the Pattern

    • Pattern: ^www\\.

    • 关键步骤:勾选右侧的 Negate (取反)。

    • 解释:这意味着“如果主机头 以 www. 开头,则执行此规则”。

    • 点击 OK

  • Action (操作):

    • 注意:如果你的网站没有启用 HTTPS,请将 https 改为 http

    • {R:1} 代表保留用户原本访问的路径(例如 /about 会被保留)。

    • Action type: Redirect

    • Redirect URL: {HTTP_HOST}/{R:1}

    • Append query string: 勾选 (保留问号后面的参数)。

    • Redirect type: Permanent (301) (有利于 SEO)。

步骤 5:应用配置

  1. 点击右侧 Apply (应用) 按钮。

  2. 配置完成。


3. 方法二:直接编辑 web.config 文件

如果你习惯直接编辑配置文件,或者需要批量部署,可以直接在网站根目录下的 web.config 文件中添加规则。

  1. 使用记事本或 VS Code 打开网站根目录的 web.config

  2. 找到 节点。

  3. 节点内添加以下 配置:

xml12345678910111213141516171819
  1. 保存文件。IIS 会自动检测并应用更改,无需重启。


4. 关键配置解析

配置项

解释

Pattern

(.*)

匹配用户访问的任何页面路径(如 /index.html)。

{HTTP_HOST}

-

获取当前请求的域名(如 example.com)。

Negate (取反)

True

最重要的一点。只有当域名 不是 www 开头时,才进行跳转。否则会造成死循环。

{R:1}

-

将匹配到的路径部分(括号内的内容)拼接到新 URL 后面,确保 /contact 跳转到 www.landui.com/contact 而不是首页。

301 Permanent

-

告诉搜索引擎这是永久迁移,有利于权重传递。


5. 关于 HTTPS 的特别说明

如果你的网站同时支持 HTTP 和 HTTPS,上述配置中的 https:// 可能会强制将所有 HTTP 请求也跳转到 HTTPS。

  • 如果你希望强制全站 HTTPS + WWW: 保持上述配置中的 https:// 不变。这是目前最推荐的安全做法。

  • 如果你希望保持原协议(HTTP 跳 HTTP,HTTPS 跳 HTTPS): 你需要使用服务器变量来判断协议。将 Redirect URL 修改为:http{C:1}://www.{HTTP_HOST}/{R:1}并添加一个条件来捕获 HTTPS 状态:

    xml1234

    (注:为了简单起见,现代网站通常建议直接强制 301 到 HTTPS,因此教程中默认使用了 https://)


6. 验证测试

配置完成后,请进行以下测试:

  1. 浏览器测试

    • 在地址栏输入 http://你的域名.com (不带 www)。

    • 按回车,观察地址栏是否自动变为 你的域名.com

    • 尝试访问 http://你的域名.com/about,确认是否跳转到 .../www.landui.com/about (路径是否保留)。

  2. 状态码检查

    • 使用浏览器开发者工具 (F12) -> Network (网络) 标签。

    • 刷新页面,查看第一个请求的状态码是否为 301

  3. 避免死循环

    • 直接访问 www.你的域名.com,确认页面正常加载,没有再次发生跳转。

7. 常见问题

  • 问题:配置后网站打不开了,提示重定向次数过多。

    • 原因Negate (取反) 没有勾选,或者条件写反了。导致 www 域名也匹配了规则,再次跳转到 www.landui.com

    • 解决:检查 Conditions 中的 Negate 是否已勾选。

  • 问题:移动端或 App 无法访问。

    • 原因:某些旧客户端不支持 301 跳转或 HTTPS。

    • 解决:确保服务器绑定了正确的 SSL 证书,且客户端支持 TLS 1.2+。

通过以上步骤,你就可以完美实现顶级域名到 WWW 的规范化跳转了。


首页
最新活动
个人中心
XML 地图