URL 重写到子域
URL Rewrite to a subdomain
我正在使用 ASP.NET 的重写工具从 http 重定向到 hpps。我想改道
https://services.net/ExitInterview/home/about
但目前正在路由到
https://services.net/home/about
下面是我的重定向规则:
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}"
redirectType="Permanent" />
</rule>`
我可以在规则字符串中混合 "HTTP_HOST" 文本和硬编码文本吗?或者有别的办法吗?
我不想对 url 进行硬编码,因为它会随着本地、暂存和生产而变化。
从 web.config 文件中的 HTTP 重定向到 HTTPS 方面,这应该可以满足您的要求:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.web>
<httpRuntime executionTimeout="180" />
</system.web>
<system.webServer>
<httpErrors errorMode="Detailed" existingResponse="PassThrough" />
<rewrite>
<rules>
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
我将这个确切的片段用于强制执行 HTTPS 重定向的网络服务器,但这似乎也与您所拥有的非常接近。您确定已正确配置 web.config 文件的结构吗? - 我记得 运行 进入问题时我会遗漏一些东西。
<rule name="HTTP to HTTPS redirect" ="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/ExitInterview/{R:1}"
redirectType="Permanent" />
</rule>
试试这个
我正在使用 ASP.NET 的重写工具从 http 重定向到 hpps。我想改道
https://services.net/ExitInterview/home/about
但目前正在路由到
https://services.net/home/about
下面是我的重定向规则:
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}"
redirectType="Permanent" />
</rule>`
我可以在规则字符串中混合 "HTTP_HOST" 文本和硬编码文本吗?或者有别的办法吗?
我不想对 url 进行硬编码,因为它会随着本地、暂存和生产而变化。
从 web.config 文件中的 HTTP 重定向到 HTTPS 方面,这应该可以满足您的要求:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.web>
<httpRuntime executionTimeout="180" />
</system.web>
<system.webServer>
<httpErrors errorMode="Detailed" existingResponse="PassThrough" />
<rewrite>
<rules>
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
我将这个确切的片段用于强制执行 HTTPS 重定向的网络服务器,但这似乎也与您所拥有的非常接近。您确定已正确配置 web.config 文件的结构吗? - 我记得 运行 进入问题时我会遗漏一些东西。
<rule name="HTTP to HTTPS redirect" ="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/ExitInterview/{R:1}"
redirectType="Permanent" />
</rule>
试试这个