[英]URL RewriteRule .htaccess for more SEO friendly shape
我有類似book.php?id=23
product.php?id=23
類的URL。我希望它們像
book/id/title
我當前的.htaccess是這個
RewriteEngine On
RewriteRule ^book/([0-9]+)\-([a-z0-9_\-]+)/?$ book.php?id=$1 [NC,L,QSA]
但是它無法正常工作,盡管頁面存在問題,它仍直接轉到book.php頁面,我無法使用$_GET
獲取Id參數,感謝您的幫助,這是我的網址http://www.gamzesart.com/book。 PHP?ID = 2
請嘗試以下操作:
+FollowSymLinks # This is based on the comment of PeteR bellow in comments
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^book/([0-9]+)/([^/]+)/?$ book.php?id=$1 [NC,L,QSA]
</IfModule>
這對我行得通。
在我的本地PC上,我嘗試訪問URL: http://www.localSite.dch/book/12/nikos
在我的book.php文件中,我有以下代碼:
<?php
echo "<pre>";
print_r($_REQUEST);
echo "</pre>";
?>
結果是這樣的:
Array
(
[id] => 12
)
實際上,我在前一周遇到了這個問題,原來是因為url引用與我正在調用的php文件的名稱相同,即:
RewriteRule ^book/([0-9]+)/([^/]+)/?$ book.php?id=$1 [NC,L,QSA]
就像測試一樣,將規則更改為:
RewriteRule ^books/([0-9]+)/([^/]+)/?$ book.php?id=$1 [NC,L,QSA]
並嘗試將該URL稱為books / 23。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.