php 向访客和爬虫显示不同的内容
2015-01-24信息快讯网
为了提高网页的用户体验, 我们经常会做一些对搜索引擎不太友好的事情, 但某些情况下这并不是无法挽回的, 可以通过向自然人和搜索引擎机器人显示不同的内容来提供好的用户体验和 SEO.
听说本方法会触犯搜索引擎的一些操作原则, 有可能被被各搜索引擎处罚, 甚至删除网站. 所以我刚刚已经撤下这样的处理, 直到确定其不属于作弊. 有魄力的朋友可以继续使用, 但后果自负.本博客的首页和存档页面以列表的形式显示文章, 在访客点击展开文章时才加载文章的内容. 因为文章的内容部分包含了大量的文字和图片, 需要大量的加载时间和流量. 尽快地向访客展示网页可以挽留大量的来访者. 而对于手机用户来说, 加载时间和流量则更为重要.
一般来说, 网站的首页是搜索引擎访问最多的页面, 应该尽可能的向它们展示有意义的内容, 但是要以列表的形式显示文章的话, 访客和搜索引擎只能获取到文章标题信息. 文章内容或者摘要 (尤其是文章的第一句) 对于 SEO 来说是极其重要的, 所以我们要设法向爬虫发送这些内容.
好, 我们可以通过 User Agent 来判断访问者是否为爬虫, 如果是, 则以一般形式显示文章, 否则以列表形式显示文章列表. 可以用以下的 PHP 方法判断是否为爬虫:
function is_crawler() { $userAgent = strtolower($_SERVER['HTTP_USER_AGENT']); $spiders = array( ‘Googlebot', // Google 爬虫 ‘Baiduspider', // 百度爬虫 ‘Yahoo! Slurp', // 雅虎爬虫 ‘YodaoBot', // 有道爬虫 ‘msnbot' // Bing爬虫 // 更多爬虫关键字 ); foreach ($spiders as $spider) { $spider = strtolower($spider); if (strpos($userAgent, $spider) !== false) { return true; } } return false; }
这是我使用的方法, 各爬虫以访问评论由高到低进行排序. 然后通过下面的的方法向爬虫和自然人显示不同的内容
php 判断访客是否为搜索引擎蜘蛛的函数代码
vs中通过剪切板循环来循环粘贴不同内容
PHP运行时强制显示出错信息的代码
php中显示数组与对象的实现代码
PHP删除特定数组内容并且重建数组索引的方法.
PHP 显示客户端IP与服务器IP的代码
按上下级层次关系输出内容的PHP代码
php文章内容分页并生成相应的htm静态页面代码
php下将图片以二进制存入mysql数据库中并显示的实现代码
PHP 循环列出目录内容的函数代码
php 中文字符入库或显示乱码问题的解决方法
php抓取https的内容的代码
php 读取shell管道传输过来的内容
PHP 采集获取指定网址的内容
php实现网站插件机制的方法
php 将excel导入mysql
PHP 读取和修改大文件的某行内容的代码
php 显示指定路径下的图片
php 获取远程网页内容的函数
数据库查询记录php 多行多列显示
php 静态页面中显示动态内容
ie6 动态缩略图不显示的原因
PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法
php获取网页内容方法总结
php preg_match_all结合str_replace替换内容中所有img
利用PHP制作简单的内容采集器的原理分析
php IIS日志分析搜索引擎爬虫记录程序第1/2页
php REMOTE_ADDR之获取访客IP的代码
利用PHP制作简单的内容采集器的代码