如何配置IIS将特定子文件夹的URL请求重定向至另一服务器?
别担心,这个需求用IIS的URL重写模块就能轻松搞定,我给你一步步讲清楚怎么配置:
前提准备
首先得确保你的IIS服务器安装了URL重写模块——这是实现重定向的核心组件,默认IIS是不带的:
- 打开服务器管理器,通过「添加角色和功能」找到Web服务器下的「URL重写」功能勾选安装;
- 或者用Web平台安装器搜索「URL Rewrite」直接安装。
具体配置步骤
- 打开IIS管理器,找到绑定了
example.com的目标站点,右键点击它,选择「URL重写」。 - 在右侧的「操作」面板里,点击「添加规则」,选择「空白规则」(这种方式最灵活,适合自定义匹配逻辑)。
- 开始配置规则细节:
- 规则名称:随便起个好记的,比如「Redirect Subfolder to Remote Server」。
- 匹配URL:
- 请求路径选「匹配模式」,模式填正则表达式:
^your-subfolder/(.*)(把your-subfolder换成你要重定向的实际子文件夹名称,比如blog)。 - 勾选「忽略大小写」,避免大小写导致匹配失败。
- 请求路径选「匹配模式」,模式填正则表达式:
- 条件:如果没有额外的匹配条件(比如特定请求头、参数),这一步可以直接跳过。
- 操作:
- 操作类型选「重定向」。
- 重定向URL填:
http://222.222.222.222/your-subfolder/{R:1}——这里的{R:1}是捕获原URL中your-subfolder后面的所有内容,保证跳转后路径和原请求一致(比如原请求是example.com/blog/post/123,就会跳转到222.222.222.222/blog/post/123)。 - 重定向类型:选「永久(301)」适合长期迁移场景,搜索引擎会更新索引;选「临时(302)」适合临时调整,搜索引擎会保留原索引。
- 勾选「追加查询字符串」,这样原请求里的参数(比如
?id=1)也会被带到目标服务器。 - 勾选「停止处理后续规则」,避免其他规则干扰这个重定向逻辑。
- 点击「应用」保存规则,现在就可以测试了:访问
example.com/your-subfolder/xxx,看看是不是自动跳转到222.222.222.222对应的路径。
额外小提示
- 如果需要匹配多个子文件夹,比如同时重定向
blog和docs,可以把正则模式改成:^(blog|docs)/(.*),对应的重定向URL改成http://222.222.222.222/{R:1}/{R:2}。 - 如果目标服务器有自己的域名,直接把IP换成域名就行,比如
http://new.example.com/your-subfolder/{R:1}。 - 要是用HTTPS,记得把URL里的
http换成https,同时确保两边服务器的SSL证书都配置正常。 - 要是重定向没生效,先检查正则模式是不是写错了,或者重启一下站点试试(一般保存规则就会生效,但偶尔需要重启)。
内容的提问来源于stack exchange,提问作者naltun
相关产品推荐
相关产品推荐

