2011-04-19 104 views
0

我想對我的網頁進行URL重寫。有2種的同一頁上可以鏈接如下:用3個變量重寫URL

分頁: http://www.xxxxx.com/dictionnaire.php?page=4 ,我想是這樣的: http://www.xxxxx.com/dictionnaire/p4

字: http://www.xxxxx.com/dictionnaire.php?idW=675&word=Resto-basket ,我想是這樣的: http://www.xxxxx.com/dictionnaire/675/Resto-basket

在.htaccess,我有以下幾點:

RewriteRule ^dictionnaire/p([0-9]+)?$ dictionaire.php?page=$1 [NC,L]  
RewriteRule ^dictionnaire/([0-9]+)/([a-z])?$ dictionaire.php?idW=$1&word=$2 [NC,L] 

問題:

  1. 這是這樣做的最好的谷歌友好的方式? (主要是單詞鏈接,還是有更好的?)
  2. 你可以有一個鏈接2重寫規則?像上面一樣?
  3. 在我的代碼中是否有錯誤,請幫助。
  4. 當我創建此代碼時,我的CS和圖像未出現。你能幫我解決嗎?

我知道這是一個長的問題,但我認爲這將是更容易這樣。

感謝您的幫助。

回答

0
  1. 這是最好的谷歌友好的方式嗎? (主要是鏈接這個詞,還是有更好的?)那麼,你可以把page4放在分頁部分,要麼不會真的影響它。對於Word頁面,爲什麼你會通過ID找到單詞而不是實際的單詞?這個詞=(WORD)實際上並沒有做任何事情。也許完全刪除ID,並通過單詞進行搜索,以便它可以是dictionnaire/word /(WORD)。
  2. 你可以有2個重寫規則的一個鏈接?像上面一樣?是的,它是完全有可能有超過2個重寫規則(認爲許多論壇,這樣做)
  3. 是否有我的代碼中的錯誤,是這樣,請幫助。我沒有看起來很難,但它似乎沒有任何錯誤。
  4. 當我創建此代碼時,我的CS和圖像未出現。你能幫我解決嗎?這裏的問題是它正在爲你的css文件搜索/dictionnaire/p4/css.file.css。它不像我想要的那樣在你的根目錄中查找。將直接根目錄添加到以/開頭的以/開頭的CSS文件。
0
  1. 這應該是「Google友好」的。
  2. 是,重寫規則按順序應用;只要匹配並替換網址,就不太可能有任何進一步的匹配(因爲它們將處理前一個替換的網址)。
  3. 對我來說沒問題。但是,如果您允許目標網址有點不同(在第二個網址上使用page =而不是idW =),則可以將其製作爲一個規則。
  4. 這是因爲瀏覽器會詢問相對於未重寫URL的資源(它當然不知道幕後發生了什麼)。您必須爲圖片和CSS使用絕對網址(或者在網址中使用../,或爲資源添加更多重寫規則以使其工作)。

希望有所幫助。

編輯:對不起,因爲你在規則的末尾有[L],它會停止嘗試匹配任何更多的規則,一旦它匹配一個。這在這種情況下不會有任何實際效果。