网页搜索引擎优化(就是动态网页很难被搜索引擎的SPIDER原因是什么??)
优采云 发布时间: 2022-04-14 06:15网页搜索引擎优化(就是动态网页很难被搜索引擎的SPIDER原因是什么??)
编译:凯伦
动态生成的网页:
对于那些动态生成的页面,我们实际的访问者可以用肉眼看到它。但是对于大多数搜索引擎的蜘蛛程序来说往往是看不见的,这就是为什么动态网页很难被搜索引擎的 SPIDER 检索到的原因。因此,如果你想让你的动态网页出现在搜索引擎的搜索结果中,你只需要保证你的网站内容对搜索引擎可见,即搜索引擎的蜘蛛程序可以看到你的网站 内容就可以了。
所谓动态网页一般是指由ASP、PHP、ColdFusion、CGI等程序动态生成的页面,网页中的大部分内容来自于网站所连接的数据库。该页面在网络空间中不存在,只有在收到用户的访问请求后才生成并传输到用户的浏览器。而且由于访问者可以实时获得他们想要的数据,动态网页往往会给人留下深刻印象。此外,动态网页还具有易于维护和更新的优点。例如,对于新产品或价格调整。网站管理员只需要对数据库进行简单的修改,根本不需要修改每个单独的静态页面。
从用户的角度来看,我们可以看到动态网页确实很棒。但如果从搜索引擎的角度来看,结论就不同了。
动态页面的问题:
问题是这些动态网页实际上并不存在于网络空间中,它们只有在用户在变量字段中输入值后才会生成。而且我们都知道,搜索引擎的Spider再聪明,也只是一个搜索程序,不能像真人一样选择变量和输入值。
也可以将查询编程到主页上的链接中,使链接成为对预定义 网站 目录的查询。用户可以在搜索表单中输入查询条件进行查询,通常动态脚本需要一定的信息才能返回页面内容,最常见的比如cookie数据、SessionID或者环境变量。但是搜索引擎蜘蛛不可能知道使用您的搜索功能,或者要问什么问题。因此,Spider 对 网站 的搜索通常必须在动态站点之前停止。
此外,动态页面的 URL 中还收录问号 (?) 和百分号 (%)。在动态页面的 URL 中,还有常见的 &、%、+ 和 $ 等符号。此类 URL 称为“环境变量”(查询字符串)。然而,大多数蜘蛛无法破译符号“?”之后的字符。例如,对于这样的 URL:大多数 SPIDER 只能读取符号“?”之前的字符。这 ”?” 在 URL 中是他们的“停止标记”,因此他们最终检索的 URL 只能是:
显然,由于这个 URL 实际上并不存在,所以他们什么也得不到。因此,如果您的整个 网站 或 网站 页面中有很大一部分是动态生成的,为了让 SPIDER 轻松读取您的 网站 上的内容,您需要 @网站进行一些修改。
一些搜索引擎在检索页面时也经常拒绝检索cgi-bin目录下的静态页面(即保存为静态页面的动态页面)的URL。例如,它们不提供对以下两个 URL 的检索:
为什么搜索引擎不读取符号“?”后面的内容:
搜索引擎的 SPIDER 不愿意阅读放在 cgi-bin 目录下的网页,或者 URL 中收录字符“?”。原因是如果在 CGI 中提供了“无限”个 URL,那么 SPIDER 经常会因为检索这些“无限”网页而陷入无限循环。这些被称为蜘蛛陷阱。数据库程序也可以为 SPIDER 创建类似的情况。因此,为了避免可能出现的陷阱,Spider 不会读取“?”后面的字符。在带有符号“?”的 URL 中。
如果爬虫被你的服务器困住了,不仅对爬虫本身不利,而且爬虫对你的网站页面的重复访问请求也会导致你的服务器系统完全瘫痪。
动态网页优化方案:
举个例子:从它的URL我们可以看出,它表示网站提供与天然减肥产品相关的内容。遗憾的是,由于Spider不支持动态生成页面,动态页面上的相关内容无法被搜索引擎收录。假设现在有一个竞争对手,他也有一个与天然减肥产品内容相似的网页,但是由于他的网页是静态的,所以可以被搜索引擎索引。可以想象,那些搜索“天然减肥产品”的用户最终会访问网站。而且,如果提供的特定内容比其竞争对手更好怎么办?仅仅因为不能出现在搜索引擎的搜索结果中,就只能将在线销售的好机会拱手让给他的竞争对手。
这个问题的解决办法可以遵循一个思路:改变动态网页的URL,使该URL不再收录符号“?” “=”和其他类似符号,看起来像一个静态 URL。
不同程序开发的动态页面的不同解决方案:
•CGI/Perl
如果您在 网站 中使用 CGI 或 Perl,您可以使用脚本来提取环境变量之前的所有字符,并将 URL 中剩余的字符分配给一个变量。这样,您可以在 URL 中使用变量。
路径信息(或脚本名称)是动态应用程序中的一个变量,收录完整的 URL 地址和环境变量信息。这样,脚本从路径信息变量中取出环境变量之前的字符,并将剩余的字符代入变量中。
但是对于那些内置了一些SSI(Server-SideInclude:Server-Side Include)内容的网页,各大搜索引擎都能够提供索引支持。那些后缀为 .shtml 的网页也会被解析成 SSI 文件,相当于普通的 .html 文件。但是,如果这些页面在其 URL 中使用 cgi-bin 路径,它们可能仍然不会被搜索引擎索引。
• 平均售价
ASP(ActiveServerPages:Web 服务器端动态网页开发技术)用于基于 Microsoft 的 Web 服务器。使用 ASP 开发的网页一般以 .asp 为后缀。ASP因其简单的功能和实用性而受到广大朋友的喜爱,再加上微软的大力支持,可以说是时下最流行的网页开发语言之一。大多数搜索引擎都可以支持使用 ASP 开发的动态网页,只要避免使用符号“?”即可。在网址中。
那么带有“?”的网址呢?在他们中?针对这个问题,一家名为“ExceptionDigitalEnterpriseSolutions”的公司推出了他们的解决方案-xqasp。这是一个升级软件。它允许转换符号“?” 在 URL 中由 Web 服务器指向“/”。更多信息请访问:有一些相对便宜的解决方案,例如ASPSpiderBait和PortalPageFilter。
•ColdFusion
如果您使用的是 ColdFusion,那么您需要在服务器端重新配置它。使用 ColdFusion 开发的网页通常具有 .cfm 文件扩展名。通常,数据库使用符号“?” 检索网页。您可以重新配置 ColdFusion 设置以替换“?” 在带有“/”的环境变量中,并将替换的值传递给 URL。这样,最终到达浏览器的是一个静态的URL页面。即对于URL,最终返回给浏览器的将是搜索引擎在检索到转换后的文件时,不会遇到“?”,从而可以继续索引整个动态页面,让你的动态页面可以搜索引擎仍然可读。
• Apache 服务器
Apache 是最流行的 HTTP 服务器软件之一。它有一个名为 mod_rewrite 的重写模块,使您能够将收录环境变量的 URL 转换为搜索引擎支持的 URL 类型。但是,Mod_rewrite 不是 Apache 软件安装中的默认模块,因此您应该咨询您的托管公司以查看该模块在您的服务器上是否可用。
还是以上面的 URL 为例: 使用 mod_rewrite 模块后, URL 变成如下格式: 关于这个模块的更多信息,请访问
动态网页可以通过付费的收录程序直接提交:
将您的提要 网站 直接提交到 AltaVista 会增加您 网站 成为 收录 的机会。通过 AltaVista 或 Inktomi 的付费 收录 程序提交它保证 收录 的 网站。
文件扩展名:
现在,您的文件名后缀是什么。这对搜索引擎来说不再是问题,即使您的网页没有 .html 或 .htm 扩展名,只要您不收录符号“?”,它仍然可以被索引。在网址中。相比之下,搜索引擎 Northernnight 就特别灵活,它可以索引 .html、.htm、.shtml、.stm、.asp、.phtml、.cfm、.php3、.php、.jsp、.jhtml、 .asc 、 .text 和 .txt 带有扩展名的文件。但是,它仍然不支持后缀为 .cgi 的文件。如果您的 网站 上有不支持的扩展名的文件,它会在 网站 提交过程中通知您。
结束语:
问问自己,你真的需要使用动态网页吗?数据库经常被用作页面生成工具,可以使用它来创建静态页面,特别是网站上那些不经常更改的区域,可以考虑使用数据库来生成静态页面内容。为确保搜索引擎索引,您还可以考虑为您的动态内容创建镜像静态页面。
大多数搜索引擎仍然不习惯索引动态网页,现在仍然如此。这是因为检索一个动态生成的网页,可能会导致搜索引擎的蜘蛛陷入死循环的“陷阱”,无法逃脱。但现在情况正在逐渐好转。第一个支持动态网页的搜索引擎是 Google,它在 2000 年代末已经能够索引动态网页(包括 URL 中的“?”)。此外,HotBot 等一些搜索引擎也开始支持动态页面。
虽然这些搜索引擎能够支持动态网页,但为了确保它们的蜘蛛程序不会陷入无限循环,搜索引擎不会对来自动态生成的页面的链接进行深入访问。所以我建议大家多花一点时间在你的动态生成的页面上,并确保它们中的每一个都可以被搜索引擎索引。事实上,在一天结束时,您会发现您所花费的时间可能是一项巨大的投资——它会为您的 网站 带来更多流量。