【问题标题】:htaccess rewrite rule adding and removing parts plus 301 redirecthtaccess 重写规则添加和删除部分加上 301 重定向
【发布时间】:2014-03-17 22:00:19
【问题描述】:

我刚刚将 phpNuke CMS 转换为 WordPress。转换完成后,我注意到每个帖子都有两个 URL。这是我转换的模式:

www.domain.com/modules.php?name=News&file=article&sid=1

不幸的是,还有另一个这样的网址:

www.domain.com/1.htm

现在我需要一个重写规则,添加“modules.php?name=News&file=article&sid=”并同时删除“.htm”并进行 301 重定向。

现在我使用了一个快速而肮脏的解决方法:

RedirectPermanent /8.htm http://domain.com/modules.php?name=News&file=article&sid=8

这既快捷又简单,但与 1600 条帖子相去甚远。而且它可能会减慢页面速度。

任何帮助将不胜感激!

【问题讨论】:

    标签: regex .htaccess mod-rewrite redirect


    【解决方案1】:

    您可以在规则中使用正则表达式,只需一条规则即可处理所有这些 URL:

    RedirectMatch 301 ^/([0-9]+)\.html?$ /modules.php?name=News&file=article&sid=$1
    

    【讨论】:

    • 非常感谢。该规则适用于 8.htm,但不适用于 123.htm。帖子的编号从 8.htm 到 1679.htm 连续。
    • 查看更新的代码并确保在新的浏览器中进行测试。它适用于8.htm OR 1679.htm
    • 太棒了。非常感谢!完美运行!
    猜你喜欢
    • 2013-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-22
    • 2011-01-05
    相关资源
    最近更新 更多