如果您有一个包含大量记录的Web应用程序,那么在您的网站上使用Google搜索是个坏主意吗?您无需编写搜索功能并处理性能问题,而是将搜索功能“外包”给Google。
如果您有一个包含大量记录的Web应用程序,那么在您的网站上使用Google搜索是个坏主意吗?您无需编写搜索功能并处理性能问题,而是将搜索功能“外包”给Google。
Answers:
正如他们在答案中提到的JCL1178一样,Google只会返回其索引内容的结果。这不仅意味着您的某些结果可能永远不会出现,而且如果您的网站由于某种原因而被取消索引,那么您从网站上的搜索就会丢失。与搜索一样重要的事情依赖于不受支持的第三方服务是很危险的。
由于您可以直接访问数据,因此可以提供比Google或任何其他搜索引擎更好,更细粒度的搜索。您可以允许您的用户搜索特定字段,从不相关的字段中过滤掉所有其他匹配。Google与其搜索的值没有任何关联,因此搜索“史密斯”家族可以为居住在“史密斯街”上的人们带来任何结果。或从事“铁匠”职业的人。
大多数流行的关系数据库都具有进行全文本搜索的能力,因此添加基本的搜索功能可以像编写一些SQL语句一样简单。
我使用Google自定义搜索引擎在我的网站上进行常规搜索,但是除非我的全文搜索能力受到限制(软件限制,由于硬件/数据集的大小)。它的确取决于您的数据有多复杂,以及搜索在导航数据中的重要性……但是提供自己的搜索功能对我来说似乎是最安全的选择。
就此答案而言,我假设您是在谈论Google自定义搜索/站点搜索,而不是Google Search Appliance ,这虽然是一个昂贵的主意,但却是一个非常好的主意。
将搜索外包到Google自定义搜索不是一个坏主意,但是由于Google的限制和规则,它可能不是最适合您的网站/业务模式/的选择。
自定义搜索与键入search terms site: yoursite.com
Google 基本上是相同的事情,只是您不必指定site: yoursite.com
部分,并且可以在网站上嵌入搜索表单。网站搜索是自定义搜索的非免费版本,具有更多自定义选项和对API的某些访问权限。链接文档中说明了“自定义/站点搜索”与“使用Google正确”之间的其他差异,但是要注意的重要一点是,它们仅适用于Google可以看到的内容。
因此,Web应用程序中的“大量记录”必须完全能够被Google抓取,以便“自定义搜索”真正返回准确的结果。如果出于任何原因限制/保护记录不公开,则要么必须向Google显示已注销用户看到的相同有限结果,要么可以让Google将全部内容编入索引,但是您必须遵守“ 首次点击免费”规则否则可能会被生气的熊猫吃掉。如果您向Google展示一件事,向访问者展示另一件事,那就是“伪装”,您的网站将因此受到罚款。如果由于某种原因您想要包含在搜索结果中的所有记录都无法被搜寻,那么对于您的特定型号,使用Google自定义搜索或网站搜索不是一个好主意。
但是,如果您可以将所有内容编入索引,那么您就不必介意Google如何返回自定义搜索的搜索结果(或者不愿意为修复该问题而为网站搜索付费),并且愿意冒着无法为关键页面建立索引的风险无论出于何种原因,您都可以并且应该认真考虑它。