Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Search 如何创建干净的搜索URL?_Search_Url_Sef - Fatal编程技术网

Search 如何创建干净的搜索URL?

Search 如何创建干净的搜索URL?,search,url,sef,Search,Url,Sef,若我的搜索有很多不同的选项,那个么url就会变得很长,看起来很糟糕。有没有办法让URL看起来更好?使用POST进行搜索可以保持URL干净,但人们无法共享搜索URL。尝试在Google上使用多种选项进行高级搜索:URL很长,而且不是特别容易让人阅读。我真的不认为这是个问题;我不认为很多人经常阅读网址。如果您希望人们共享搜索结果,那么在搜索结果页面上显示一个按钮,该按钮将为该特定查询生成tinyURL样式的缩短URL 帖子用于更改服务器状态(例如数据库更新)的内容,实际上不应用于搜索。URL中是否需

若我的搜索有很多不同的选项,那个么url就会变得很长,看起来很糟糕。有没有办法让URL看起来更好?使用POST进行搜索可以保持URL干净,但人们无法共享搜索URL。

尝试在Google上使用多种选项进行高级搜索:URL很长,而且不是特别容易让人阅读。我真的不认为这是个问题;我不认为很多人经常阅读网址。如果您希望人们共享搜索结果,那么在搜索结果页面上显示一个按钮,该按钮将为该特定查询生成tinyURL样式的缩短URL


帖子用于更改服务器状态(例如数据库更新)的内容,实际上不应用于搜索。

URL中是否需要使用不同的选项?例如,从“我的Firefox搜索”窗口快速搜索会得到如下URL:

http://www.google.com/search?q=search&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a


如果我向任何人发送链接,我习惯性地在
q=search
之后切断所有链接。为什么不将URL设置为向某人(或书签)发送链接所需的最小值,并将其余内容设置为不可见的POST变量?

您可以将所有搜索条件编码为类似哈希的内容,然后在查询字符串中设置一个具有该值的参数:

http://www.mysearch.com/query=2esd32d2csg3fasfdlkjSDDFdskjsEWFsDFFR39fdf

我不确定您将如何对所有内容进行编码,但这不会太困难。

关于POST用于状态更改的观点非常有效(如果有点教条的话)。为什么不在cookie中保存选项/状态。这就是他们在那里的目的!POST还为搜索(GET)等东西创造了糟糕的用户体验;Cookie选项的一个缺点是当你想把搜索邮件发送给其他人的时候,我同意你通常不应该使用POST来执行SACHE,但是如果你考虑将搜索保存为Bean到session,那么这就改变了服务器上的状态,但是当然这是你应该避免的……而在一般的用户选项中,例如,区域设置或首选背景颜色在cookie中是完全合适的,搜索选项的示例在我看来并不相同;我不会把它们放在cookie中。当然,但是如果有一些选项,比如返回什么语言、每页显示多少项、搜索什么文件类型、搜索什么日期等(也就是说,这些选项实际上会影响返回什么搜索结果),仍然会导致一个长URL。