douyao1856 2013-12-18 09:25
浏览 35
已采纳

URL RewriteRule .htaccess更多SEO友好的形状

I have URLs like book.php?id=23 product.php?id=23 etc.. I want them to be something like

book/id/title 

my current .htaccess is this

RewriteEngine On
RewriteRule ^book/([0-9]+)\-([a-z0-9_\-]+)/?$ book.php?id=$1 [NC,L,QSA]

but it's not working properly, it's directing to book.php page despite of problems in page, I can't Get the Id parameter using $_GET , any help is appreciated here's my url http://www.gamzesart.com/book.php?id=2

  • 写回答

2条回答 默认 最新

  • doujiyuan0211 2013-12-18 09:49
    关注

    Actually I had this problem the other week, it turned out it was because the url reference was the same as the name as the php file I was calling, i.e:

    RewriteRule ^book/([0-9]+)/([^/]+)/?$ book.php?id=$1 [NC,L,QSA]
    

    Just as a test, change your rule to:

    RewriteRule ^books/([0-9]+)/([^/]+)/?$ book.php?id=$1 [NC,L,QSA]
    

    and try calling the URL as books/23 instead.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?