2012-08-08 83 views

回答

0

在apache服務器上,我建議您使用mod_rewrite模塊來使用RewriteEngine。 使用此模塊,您可以爲某些內部URL指定別名(當然也可以使用參數)。您也可以爲此使用RegEx。

RewriteEngine on Wikipedia

mod_rewrite tutorial

0

簡短的回答:它可能是不值得的麻煩。

朗的答案... 我猜你看到三個查詢參數使用搜索塊時:

  1. 查詢
  2. search_paths []
  3. 提交

第一參數是必需的,以使搜索工作,但其他兩個可以被刪除。當我構建具體的5個主題時,我通常會對搜索表單的html進行「硬編碼」,以便我可以控制發送哪些參數(基本上,不要爲提交按鈕提供「名稱」,也不包括一個「search_paths」隱藏字段)。

雖然「查詢」參數不容易擺脫。問題是,對於搜索,你是假設有一個類似於URL的參數。你可以通過使用javascript解決這個問題 - 當提交搜索表單時,使用一些jquery來重寫請求,以便將該參數放在URL的末尾(例如,http://example.com/search?query=test變爲http://example.com/search/test)。然後,按照@ tuxtimo的建議,您可以在.htaccess文件中添加一條重寫規則,以獲取該URL的最後一部分,並將其視爲系統預期的?查詢參數。但是,如果用戶沒有啓用javascript,那麼這將不起作用(因此可能也不適用於Googlebot,這意味着這不會真的爲您提供任何SEO目的 - 我進一步想象的是您真正的原因問這個問題開始)。

而且,你會遇到很多麻煩,如果你曾經添加另一頁下你展示在搜索結果(網頁,因爲你有頂級的搜索頁面路徑後把一切都重寫規則作爲一個搜索參數 - 所以你永遠不可能到達該路徑下存在的地址)。

因此,我只是做一個很好的乾淨的搜索表單,只發送?查詢參數,並把它留在那 - 我不認爲這些比/ search-term更便於用戶友好。