2011-06-29 155 views
6

我不知道这是可能的,但我有我想赚更多的友好以下网址:的.htaccess重写友好的URL

http://www.myurl.com/content.php?id=13089093057550&slug=this-is-a-nice-url 

而且我希望它看起来像这样:

http://www.myurl.com/this-is-a-nice-url 

我该怎么做?

回答

2

您可以将slug置入查询字符串中,但在没有提供id的地方,Apache无法提供它。希望你只有使用URL slug参数才能从数据库中获取id。

RewriteEngine On 
# We don't know the id 
RewriteRule (.*)$ /content.php?slug=$1 [L,QSA] 
7

您需要将id传递给您的PHP代码才能显示我相信的内容。例如,查看Stack此问题的溢出URL:http://stackoverflow.com/questions/6520671/htaccess-rewrite-friendly-urls它通过idslug。所以,你可以有友好的URL,如:

http://www.myurl.com/13089093057550/this-is-a-nice-url 

如果你决定通过我的建议去那么这里就是代码,你需要在.htaccess:

Options +FollowSymlinks -MultiViews 
RewriteEngine On 

RewriteRule ^([0-9]*)/(.*)/?$ /content.php?id=$1&slug=$2 [L,QSA] 
+0

辉煌,感谢您的帮助! – Oakesy

+0

@Oakesy:不客气。当你有机会时,你能否将其标记为已接受? – anubhava