sogou spider(搜狗蜘蛛) 请求网站robots.txt时,服务器400返回码

发表于:
来源:阿酷技术学习
作者:simplefastbest

问题描述。

发现搜狗蜘蛛不到访我的网站,检查日志,发现sogou蜘蛛请求robots.txt时,服务器返回都是400。

220.181.125.1 - www.arkuu.com [27/Nov/2019:04:21:13 +0800] "GET /robots.txt HTTP/1.1" 301 184 "-" "Sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)" "-"
220.181.125.1 - www.arkuu.com [27/Nov/2019:04:22:38 +0800] "GET / HTTP/1.1" 301 184 "-" "Sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)" "-"
220.181.125.1 - www.arkuu.com [27/Nov/2019:04:22:59 +0800] "GET /robots.txt HTTP/1.1" 400 270 "-" "Sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)" "-"
220.181.125.1 - www.arkuu.com [27/Nov/2019:04:23:44 +0800] "GET / HTTP/1.1" 200 14709 "-" "Sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)" "-"
123.126.113.103 - www.arkuu.com [27/Nov/2019:08:56:29 +0800] "GET /robots.txt HTTP/1.1" 400 270 "-" "Sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)" "-"
111.202.101.81 - www.arkuu.com [27/Nov/2019:11:53:38 +0800] "GET /robots.txt HTTP/1.1" 400 270 "-" "Sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)" "-"

一头雾水,不知道为什么?

其它的蜘蛛(baidu,google)都是正常的。就是sogou的有问题。自已模拟sogou蜘蛛ua,也没有问题。

400状态码:

400是一种HTTP状态码,告诉客户端它发送了一条异常请求。400页面是当用户在打开网页时,返回给用户界面带有400提示符的页面。其含义是你访问的页面域名不存在或者请求错误。主要分为两种。

1、语义有误,当前请求无法被服务器理解。除非进行修改,否则客户端不应该重复提交这个请求。

2、请求参数有误。

400的主要有两种形式:

1、bad request意思是“错误的请求";

2、invalid hostname意思是"不存在的域名”。

通常只用Windows主机才会出现这样的字样,如果是Linux主机,会显示不同的错误提示。bad request invalid hostname出现这个错误的原因是某个域名绑定到了某个主机上,而该主机却没有绑定这个域名,所以IIS就返回了这个提示信息。遇到这个问题怎么办呢?解决方法首先就是Ping一下域名,看看是否解析到空间所在的IP,如果是,再去空间的管理面板看有没有绑定你的域名了,如果有,就可以肯定是空间提供商的问题了,解决这个问题就只能找空间提供商绑定你的域名了,如果自己有这个权限自己绑定域名就可以解决问题。

以上是百度百科关于400的定义。

问题出在哪儿?

不存在的域名不可能。那就可能是错误的请求。网上都说明:是http转到https出错了

这一块我的原来的配置是:

if ($scheme = 'http'){
        rewrite ^/(.*) https://www.arkuu.com/$1 permanent;
 }

改成:

if ($scheme = 'http'){
        rewrite ^/(.*)$ https://www.arkuu.com/$1 permanent;
 }

加个结尾幅$。不知道正确了没有,因为不能测试,只有sogou的蜘蛛有问题。先试着这样改。明天再看看。