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

如何使用IIS URL重写模块实现不同域名间的URL完整重定向?

域名前缀重定向实现方案

需求匹配说明

本方案可实现仅替换域名前缀exe为example,完整保留原请求的协议、路径、查询参数,示例效果:
原请求地址:https://exe.test.dir.com/xyz/ref?function=view
重定向后地址:https://example.test.dir.com/xyz/ref?function=view


Nginx 配置

在exe域名对应的server配置块中添加如下规则:

server {
    listen 80;
    listen 443 ssl;
    # 匹配所有exe前缀的域名,若为固定域名可直接写死如exe.test.dir.com
    server_name exe.*; 

    # 请自行补充ssl证书相关配置
    # ssl_certificate your_cert.pem;
    # ssl_certificate_key your_cert.key;

    # 301永久重定向,如需临时重定向将permanent改为redirect即可
    rewrite ^ $scheme://example.$host$request_uri? permanent;
}
  • $scheme 自动继承原请求的http/https协议
  • $request_uri 完整保留原请求的路径+查询参数,末尾的?用于避免Nginx自动重复追加查询参数

Apache 配置(.htaccess)

在exe域名对应站点的根目录.htaccess文件中添加规则:

RewriteEngine On
# 匹配所有exe前缀的域名,NC表示不区分大小写
RewriteCond %{HTTP_HOST} ^exe\.(.*)$ [NC]
# 301永久重定向,QSA表示保留原有查询参数,需临时重定向改为R=302即可
RewriteRule ^(.*)$ %{REQUEST_SCHEME}://example.%1/$1 [L,R=301,QSA]
  • %1 自动捕获域名除前缀外的剩余部分
  • QSA 标志保证原有查询参数完整传递

IIS 配置

需先安装IIS官方URL重写模块,在站点的web.config中添加如下规则:

<rule name="ExeToExampleRedirect" stopProcessing="true">
    <match url="(.*)" />
    <conditions>
        <add input="{HTTP_HOST}" pattern="^exe\.(.*)$" />
    </conditions>
    <action type="Redirect" url="{REQUEST_SCHEME}://example.{C:1}/{R:1}" redirectType="Permanent" appendQueryString="true" />
</rule>
  • appendQueryString="true" 保留所有原有查询参数
  • redirectType="Permanent" 对应301永久重定向,改为Found即为302临时重定向

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 16:24:04