2009-10-14 96 views
2

我一直使用mod_rewrite來創建看起來乾淨的URL,直到最近我還不知道還有其他選項。幾個星期後,有人在這裏指出,使用apache PATH_INFO可以達到完全相同的效果。現在考慮它,我認爲這是大多數PHP框架所做的,可以選擇依賴mod_rewrite來純粹地從URL中刪除index.php引導程序。mod_rewrite或乾淨URL的路徑信息

所有導致幾個問題:

  1. 這是創造一個清潔,靈活的URL結構類似的更好的辦法: /page/var/foo/bar/2
  2. 這兩種方法的相對優點和缺點是什麼?
  3. 哪種方法在資源使用等方面表現更好?

謝謝。

回答

0

with pathinfo您將始終在url中包含腳本名稱,該腳本名稱看起來很蹩腳(並且不被某些代理認爲是有效的)。我建議使用mod_rewrite作爲主要方法,使用pathinfo或404處理程序作爲後備。

+1

很確定我已經看到了URL中沒有腳本名稱的path_info例子,任何人都可以確認嗎? – robjmills 2009-10-14 12:53:43

+2

我想說這是不可能的,但我以前錯了。但是,使用'mod_rewrite'來簡單地將所有請求重定向到一個腳本並在該腳本中使用'path_info'是非常可能的,而且我的理解非常普遍。 – 2009-10-14 14:32:27