2012-09-18 152 views
0

如何使用的.htaccess重定向像mod_rewrite的搜索引擎优化URL

http://sample.com/photos.php?cat=13&sort=most_recent&time=all_time

的URL

http://sample.com/photos/comedy

谢谢。

+0

如何从'13'得到'comedy'?如果你说“来自数据库”,你将无法很容易地使用mod_rewrite来做到这一点,因为htaccess规则不能访问你的数据库。 –

+0

实际上来自数据库。喜剧的类别ID是13.任何解决方案?谢谢! – madhushankarox

+0

*“任何解决方案?”*,是的,写一个PHP脚本,或添加到'photos.php',以便它看起来是什么请求,并重定向浏览器友好的外观URL,如果请求是带查询字符串的那个。 –

回答

1

你需要做的“猫”参数为字符串(http://sample.com/photos.php?cat=comedy &排序= most_recent &时间= ALL_TIME) 然后你就可以使用此规则。

RewriteEngine on  
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/?$ $1.php?cat=$2&sort=most_recent&time=all_time 

(未测试)

+0

谢谢。但我能够这样做。我想要做的是,如果URL指的是cat ='id',那么我想把id重命名为这样的sting。所以我可以使用SEO网址。实际上我不需要其他参数(http://sample.com/photos/13/Comedy/most_recent/all_time/)如果http://sample.com/photos/Comedy这样的最终网址,那就是我想要的。 – madhushankarox