2011-12-01 84 views
1
RewriteRule ^Buy\-(.*)-b(.*)\.html productdetails.php?bname=$1&bid=$2 

如果$ bname =「購物時間」或$ bname =「時間去購物」,.htaccess中的上述代碼正常工作。並給出了下面的鏈接 http://www.yourdomain.com/Buy-Time去逛街,b1.html 或 http://www.yourdomain.com/Buy-Time去:購物,b1.html.htaccess rewriterule給出錯誤

但如果$ BNAME =「時間:逛街」上面給出了一個糟糕的鏈接。 購買時間:去購物-b1.html

+0

啊這是一個錯字,我忘了在我的問題的最後一個鏈接中鍵入-b1後綴。原本就在那裏。並點擊鏈接說,不好的鏈接 –

回答

0

所以看起來你的問題只是正則表達式中的Buy-與下一個URL中的buy-的情況。如果是這樣,那麼你只需要在任何情況下[NC]標誌:

RewriteRule ^Buy\-(.*)-b(\d+)\.html ...?bname=$1&bid=$2 [NC] 

我冒昧地還添加\d+的特異性。

+1

沒有解決問題。 –

+0

我懷疑你的問題描述是關閉的。嘗試啓用'RewriteLog'來找出問題的根源。 – mario

+0

我對此很陌生,所以我該怎麼做?只需將RewriteLog放入.htaccess或在.htaccess中鍵入RewriteLog即可。這兩種方法都會在使用RewriteRule的任何頁面上出現500內部服務器錯誤,如上面提到的那樣 –