【问题标题】:URL Rewrite Sub-domain and Directory Structure in ASP.NET 4.0ASP.NET 4.0 中的 URL 重写子域和目录结构
【发布时间】:2012-03-14 15:15:36
【问题描述】:

我正在尝试在 ASP.NET 4.0 中重写/重定向一个 url

例子:

    请求的网址
http://www.domain.com/accounting/blog/post/2009/07/17/Getting-the-most-out-of-your-account-firm.aspx

    重写/重定向网址
http://blog.domain.com/post/2009/07/17/Getting-the-most-out-of-your-outplacement-firm.aspx

也就是说,将子域从“www”改为“blog”,并从目录结构中删除“/accounting/blog”,然后重定向。

这是我正在使用的规则(通过 IIS 中的模式匹配测试,但不起作用):

<rewrite>
<rules>
    <rule name="blog redirect" stopProcessing="true">
        <match url=".*" />
        <conditions logicalGrouping="MatchAll">
            <add input="{HTTP_HOST}" pattern="www\.domain\.com\/accounting\/blog\/(.*)" />
        </conditions>
        <action type="Redirect" url="http://blog.domain.com/{C:1}" />
    </rule>
</rules></rewrite>

任何帮助将不胜感激。

【问题讨论】:

    标签: asp.net iis-7 url-rewriting


    【解决方案1】:

    这适用于任何域:

    <rules>
        <rule name="blog redirect" stopProcessing="true">
            <match url="^accounting/blog/(.*)" />
            <conditions logicalGrouping="MatchAll" trackAllCaptures="true">
                <add input="{HTTP_HOST}" pattern="^www\.(.*)" />
            </conditions>
            <action type="Redirect" url="http://blog.{C:1}/{R:1}" />
        </rule>
    </rules>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-03
      • 1970-01-01
      • 1970-01-01
      • 2014-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多