2012-08-08 42 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更便于用户友好。