0

提前感谢帮助。我正在使用 mod rewrite,需要帮助将特定的 PHP URL 转换为更漂亮的 URL。

具体来说,我想转换 PHP URL:

www.sample.com/subcategory.php?subcategory=sports-achievement&page=1

www.sample.com/sports/sports-achievement.html

为用户。

所以具体来说,规则是:

  • a) 破折号之前的子类别的第一部分应该是目录(例如,sports- - 进入 /sports/
  • b)整个子类别作为页面字符串“sports-achievement.html
  • c) PHP 页面仍然需要传递页面字符串(因为有多个页面)

在此先感谢您的帮助!

4

1 回答 1

0

要获得重定向和内部重写,您必须执行类似的操作。

#Redirect
RewriteCond %{THE_REQUEST} (GET|POST)\ /subcategory\.php\?subcategory=([^-]+)-([^&]+)(&(.*)|)\ HTTP
RewriteRule ^subcategory\.php$ /%2/%2-%3.html?%5 [R,L]

#Internal rewrite
RewriteRule ^(.*)/\1-(.*)\.html$ subcategory.php?subcategory=$1-$2 [QSA,L]

没有隐藏页面名称的真正方法。您可以使用 post-request 并将其隐藏在 post-body 中。我对这个问题的回答显示了如何使用 cookie 来做到这一点,但这很可能会混淆搜索引擎,因为不同的页面以某种方式可以在相同的页面名称下使用。

于 2013-12-08T14:42:49.597 回答