【问题标题】:Redirect old urls when changing to prefixless in Piranha Cms在 Piranha Cms 中更改为无前缀时重定向旧网址
【发布时间】:2017-07-12 20:25:55
【问题描述】:

不幸的是,我有很多以“/home”为前缀的 SEO 索引页面。 现在我需要在 Piranha 中更改为无前缀的 url,这很容易。但是有没有一个地方可以强制从旧网址重定向到新网址? 例如。将“www.example.com/home/page”重定向到“www.example.com/page”。问题是旧页面不再存在,因此我无法在该页面上放置脚本来进行重定向。 最好的祝福 丹麦拉斯

【问题讨论】:

    标签: piranha-cms


    【解决方案1】:

    我认为最好的方法是使用 url rewrite 模块(需要从 web 平台安装它)。 在 web.config 中您可以将重写规则附加到 system.webServer => rewrite => 规则。

    我不会测试它,但它应该是这样的:

    <system.webserver>
     <rewrite>
      <rules>
       <rule name="RedirectToPrefixless" stopProcessing="true">
        <match url="^home/(.*)" />
        <action type="Redirect" url="{R:1}" />
       </rule>
      </rules>
     </rewrite>
    </system.webserver>
    

    标记“匹配”查找以“home/”开头的 url - 正则表达式“(.*)”的一部分创建将用于重定向 url 的组

    标记“action”状态,对于匹配 URL,它应该从“match”部分重定向到“(.*)”部分。

    例如:

    • /home/test1 重定向到 /test1
    • /home/test2?page=22 重定向到 /test2?page=23

    所有重定向都是“永久的”(http 状态 301)- 也可以更改 ;)

    【讨论】:

    • 谢谢 Pawel - 我会尝试 web.config 中的正则表达式建议。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-21
    • 2017-01-10
    • 2021-05-03
    • 2014-01-18
    • 2016-11-22
    • 2016-09-01
    相关资源
    最近更新 更多