【问题标题】:URL forwarding within a web config file for Windows Server 2012 IIS 8.5Windows Server 2012 IIS 8.5 的 Web 配置文件中的 URL 转发
【发布时间】:2014-09-11 13:34:20
【问题描述】:

我正在尝试将我网站上的特定 URL 转发到另一个网站,但我不知道如何在我的 IIS 服务器的 web.config 文件中设置正确的值。

例如我想转发 www.example.com/ballot 到 ballot.example.com

到目前为止,我已经尝试了以下方法,但它对 url 没有任何影响

<rewrite>
  <rules>
    <rule name="Imported Rule 1" stopProcessing="true">
      <match url="^/ballot$" ignoreCase="false" />
      <conditions>
        <add input="{HTTP_HOST}" pattern="^example\.com$" />
      </conditions>
      <action type="Redirect" redirectType="Permanent" url="http://ballot.example.com/" />
    </rule>
  </rules>
</rewrite>

我将网站托管在 Rackspace Cloud 网站上。

【问题讨论】:

  • 有人吗?我真的可以在这方面使用一些帮助。我正在寻找解决方案,但我尝试的任何方法都不起作用。我认为这就像在 apache 服务器上使用 .htaccess 文件设置重定向一样简单。

标签: asp.net iis web-config rewrite windows-server-2012


【解决方案1】:

好的,我已经解决了这个问题,我将在此处发布解决方案,以供可能遇到类似情况的其他人使用。

如果您想将某个网址(如http://www.example.com/ballot)重定向到http://ballot.example.com/

然后按照以下步骤操作

1)。如果不存在直接在 www.example.com 的网络根目录下创建一个名为 ballot 的目录。

2)。创建一个 Web.config 文件,并将其放在投票目录中,内容如下。

<?xml version="1.0"?>
<configuration>
    <system.webServer>
        <httpRedirect enabled="true" destination="http://ballot.example.com" httpResponseStatus="Permanent" />
    </system.webServer>
</configuration>

3)。确保将目的地更改为实际目的地。

4)。如果您在 Rackspace 云站点上托管,则必须重建应用程序(不确定其他主机)。您可以通过删除 Web.Config 文件(如果存在)并上传新文件来重建应用程序,或者通过单击您尝试重定向的云站点的常规设置选项卡中的重建应用程序链接。有关在 Rackspace 中重建应用程序的更多信息:http://www.rackspace.com/knowledge_center/article/how-to-rebuild-an-aspnet-application-in-cloud-sites

这里还有一个链接,指向我最终找到解决方案的页面:https://www.stokia.com/support/misc/web-config-response-redirect.aspx

我希望这对可能遇到类似情况的人有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-21
    • 1970-01-01
    • 2015-06-29
    • 2015-09-16
    • 1970-01-01
    相关资源
    最近更新 更多