【问题标题】:Url rewrite return 404 error when spaces replaced with + in umbraco在 umbraco 中用 + 替换空格时,Url 重写返回 404 错误
【发布时间】:2018-01-03 14:38:40
【问题描述】:

我需要在 umbraco 中重写一个 url。如果我留下空格,它目前正在工作。但是我想删除空格并用 + 替换它们以获得更多用户友好的 url,而没有 %20。

所以这是有效的。

/For-Sale/6_24-Hunter Street-KELVIN GROVE-4059

但事实并非如此。 umbraco 只是告诉我找不到该页面。 404 错误。

/For-Sale/6_24-Hunter+Street-KELVIN+GROVE-4059

这是我正在使用的 umbraco url 重写规则。

<add name="SaleRule"
     virtualUrl="^~/For-Sale/(.*)"
     destinationUrl="~/Result/Item?type=For-Sale&amp;address=$1"
     rewriteUrlParameter="ExcludeFromClientQueryString"
     ignoreCase="true" />

知道我做错了什么吗?

【问题讨论】:

    标签: asp.net umbraco7


    【解决方案1】:

    对于那些遇到这个问题的人来说,我是如何解决它的。

    我在以下帖子中找到了答案 - Is Enabling Double Escaping Dangerous?

    要允许 url 中的 + 符号,我需要在 web.config 中设置以下内容。

    <system.webServer>
        <security>
            <requestFiltering allowDoubleEscaping="true"/>
        </security>
    </system.webServer>
    

    我在 Umbraco 中正确的 URL 重写规则。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-03-02
      • 2014-05-25
      • 2011-07-06
      • 2014-06-02
      • 1970-01-01
      • 2022-01-13
      • 2018-06-25
      相关资源
      最近更新 更多