当前位置: 首页 > 图文教程 > 网站运营 > 网站优化 > 无法通过Google网站管理验证的解决

网站优化
谷歌官方《搜索引擎优化指南》分析工具篇
谷歌中文网站管理员教程 链接架构重要性
更新网站内容频率对SEO的影响
针对于谷歌搜索引擎优化的十二个基本步骤
《网络营销教程—SEO》 第二章搜索引擎
《网络营销教程—SEO》 第三章搜索引擎营销
基础教程 搜索引擎优化基础之空间和域名
基础教程 搜索引擎优化基础之爬虫程序篇
国内四大主流搜索引擎 百度谷歌雅虎搜狗
搜索引擎优化基础教程 进行关键词的优化
搜索引擎优化基础教程 如何针对百度优化
十四个因素 将导致网站不被搜索引擎收录
搜狗搜索引擎优化方法
九大搜索引擎优化作弊总结 检查下你网站
影响网站优化的五项关键策略
搜索引擎优化基础教程 单面页的最佳优化
网站优化过程中的关键点 关键词的选择
搜索引擎优化排名做好的十个基本要点
谈外连对整个网站的seo影响有多大
搜索引擎优化SEO操作指南

网站优化 中的 无法通过Google网站管理验证的解决


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-26   浏览: 86 ::
收藏到网摘: n/a

    Google网站管理员工具的验证方式有两种,一个是通过html文件,或一种是通过meta标签。通常情况下,这两个方式直接就可以通过验证了。但是也有不同的情况,就是今天我遇到的情况!

    我按Google的说明,上传了google的html文件到网站的跟目录,但就是无法通过验证,报错是:我们检测到您的 404(找不到文件)错误页在标头中返回了 200 (成功) 状态。

    从说明上来看,他应该是也查我网站的404页面,而我的404页面是返回了200,而不是404。于是我随便打了一下一个错误的页面,发现,返回确实是200。那么我是不是把这个404页面加一个header 404就可以了呢? 是的:

    只在要404页面的头部加上:header("HTTP/1.0 404 Not Found");就可以了!

    这样,验证就通过了! 但是,我这个404页面其实不是单纯的404页面,我还想让Google收录呢,而如果返回404,Google就不收录了。不能为了验证这个,我就不作200了,那么怎么呢?
我想了一下,Google如果过来访问我的404,他的user agent一定不一样,于是,我在服务器端把所有访问的user agent 都记录一下,发现了Google在作这个验证时,共访问我404页面3次,而且三次的uset agent 都是不一样的,分别是以下:

Google-Sitemaps/1.0
Google-Site-Verification/1.0
Mozilla/3.0 (compatible; Indy Library)

    正常的Google爬虫是不是用这三个user agent的,从字面上来看,一个是google验证的,一个是google sitemap的,另一个应该是一个开源的什么东西!

    所以,在404的开头如果判断一下user agent,如果是三个,就返回404,否则全是200就行了:

<?php
$googleArray = array(
 'Google-Sitemaps/1.0',
 'Google-Site-Verification/1.0',
 'Mozilla/3.0 (compatible; Indy Library)'
);

if(in_array($_SERVER['HTTP_USER_AGENT'], $googleArray)){
 header("HTTP/1.0 404 Not Found");
} else{
 header("HTTP/1.0 200 OK");
}
?>

    OK,这样,验证就通过了!但这样,说实在的不太好,404就应该是返回404,但有时有别的用处,也是没有办法的事! 只能这样了!