友好的网址类别

时间:2010-04-22 06:42:24

标签: .htaccess mod-rewrite seo friendly-url

我正在尝试将友好网址用于我的类别。

示例数据库

cat_id    |   parent_id    |  name     |     url
  1               0            cat1          cat1
  2               1            cat2          cat2

我的方法是传递带有url值的参数cat,例如show.php?cat = cat1 在.htaccess中我必须重写为/ cat1

但是我什么时候想要访问cat2。我想重写为cat1 / cat2,所以参数是show.php?cat = cat1 / cat2,然后解析该值以确保cat2属于cat1。

等等。

我没有使用MVC所以我必须自己做。

如果有任何其他解决方案更好,请建议或建议我阅读

提前感谢。

2 个答案:

答案 0 :(得分:1)

您已经将“url”保存在数据库中,我想最简单的解决方案是将完整的类别字符串(包括父项)放在数据库的该列中。那就是:

cat_id    |   parent_id    |  name     |     url
  1               0            cat1          cat1
  2               1            cat2          cat1/cat2

或者您对.htaccess语法有疑问吗?

答案 1 :(得分:1)

如果你想重写一个友好的URL,你需要首先使它友好,就像这样...(我假设cat1是一个合适的类别,例如“音乐”或“新闻”,例如:< / p>

www.yoursite.com/category/cat1/
show.php?cat=cat1

请注意,我们的“类别”不是“猫” - 友情网址的概念是有意义的(并且可能有助于搜索引擎更好地理解您的网页!)

然后,您可以使用.htaccess规则重写URL。

RewriteEngine on
RewriteRule ^category/([^/\.]+)/?$ show.php?cat=$1 [L,NC,QSA]