2015-03-13 128 views
1

我試圖讓漂亮的URL,但希望把內容標題的網址,而不是ID,然後我把內容標題中的URL與查詢字符串:的.htaccess漂亮的URL稱號網址

的index.php?動作內容= & ID = 22

改爲:

的index.php行動=含量&標題=堆棧超過-F低

它的工作正常。現在我試圖讓它漂亮,但在htaccess代碼中遇到了問題。在URL代碼刪除ID之前

是:

RewriteRule ^([a-z]+)/([0-9]+)/?$ index.php?action=$1&id=$2 [NC,L,QSA] 

然後我更改爲:

RewriteRule ^([a-z]+)/([a-z]+)/?$ content.php?action=$1&title=$2 [NC,L,QSA] 

,但它不工作,我會回來300多個選項頁。嗯,我認爲這是一個httaccess問題,但我是htaccess中的新手,需要一個手來解決這個問題。

想這樣:

/內容/堆棧過流

回答

1

你的正則表達式是隻允許字母。它還應該允許連字符,數字,大寫字母和下劃線。試試這個:

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([a-z]+)/([^/]+)/?$ content.php?action=$1&title=$2 [NC,L,QSA] 
+1

真棒答案,謝謝它完美的作品! – ITSolution 2015-03-13 13:47:04

+0

只是一個問題。它適用於標題爲英文的情況,對於非英文標題,我再次獲得300多個選擇頁面。它會得到像這樣的非英語字符:/ content /ÙرÙØ'گاه-جدید-Ú¯ÙÚ¯Ù「這個怎麼樣? – ITSolution 2015-03-13 13:52:41

+0

好吧,讓我更新非英文文本的答案。 – anubhava 2015-03-13 13:53:23