【问题标题】:htaccess querystring based urlshtaccess 基于查询字符串的 url
【发布时间】:2011-06-02 04:08:02
【问题描述】:

假设我的网站是 www.example.com

之前我网站的网址是这样的www.example.com/php/bookdetails.php?bid=33

上周我将我网站的网址更改为 www.example.com/bookdetails/33

并写了一个这样的htacces

RewriteRule ^bookdetails/(.*)$ php/bookSearchResult.php?bid=$1

问题是有一些外部网站使用我之前的 URL 结构 (www.example.com/php/bookdetails.php?bid=33),我想要将其重定向到我的新网址结构 (www.example.com/bookdetails/33)。

我知道它可以在 htaccess 中实现,但我不知道该怎么做

【问题讨论】:

    标签: php .htaccess redirect seo


    【解决方案1】:

    RewriteRule ^php/bookdetails\.php\?bid=(\d+)$ bookdetails/$1 [L,R=301]

    匹配旧格式的 PCRE,捕获号码,引用捕获号码的新 URL,最后一条规则,使用 HTTP 状态 301 重定向(永久移动)

    测试了它的语法,但不能确保它完全工作。我很确定如果不是这样,它应该很接近。)

    确保此规则在您提到的其他规则之前重写为正确的 php URL,否则您将获得 500 的无限循环重写。

    Rewrite GuideAdvanced Rewrite Guide 是非常宝贵的示例资源。

    编辑:

    顺便说一句,这是.htaccess and seo friendly urls 的副本,可能还有其他几个,以获取更多想法。 (我应该先找一个副本。)

    【讨论】:

      猜你喜欢
      • 2012-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-15
      相关资源
      最近更新 更多