网站采用node+pug渲染而成,无法完成百度网盟验证,请帮忙分析下原因。
发布于 6 年前 作者 dolphinfine 4362 次浏览 来自 问答

最近公司网站www.yiqiniu.com申请百度网盟认证,具体内容就是这里 百度网盟验证步骤

image.png 然后下载文件放在网站域名根目录,我理解的网站域名根目录就是通过express设置的静态文件夹,通过访问https://www.xx.com/bdunion.txt可以直接访问到。 不知道这个理解是否正确?

然后在pug模板<head></head>标签内按照要求放了<meta name=“baidu_union_verify” content=“xxx”>, 通过访问公司网站,在控制台查看,可以看到已经有了。 但是在验证的时候始终无法通过。

猜测原因如下: 1.可能跟pug模板有关,pug模板没有生成html文件。 2.虽然验证文件放在根目录可以直接访问,但是可能因为一些安全设置,导致爬虫无法抓取。

刚发现一个问题,网盟验证是http的,我们网站是https,但是http会重定向到https,这是否会影响爬虫抓取呢?

因为网站不是我做的,我只是维护,并且对node也不是很精通,所以不太清楚到底是哪个原因。 请有这方面经验的兄弟帮忙分析下原因。

ps:百度回邮件了,说不支持https,感谢各位。

19 回复

模板里放meta标签的时候怎么放的,是pug语法还是html语法。在浏览器里查看源码看看meta标签有没有,对不对

我之前帮人做过一个网站,不过那时候还叫jade,完全没问题啊,验证通过的

@imhered 是pug的语法,控制台查看源码的时候完全没问题的,复制下来跟百度给的对比是一样的。

抓包看一下,难道meta也是异步渲染?

@rxk666666 那有啥可异步的

自己 wget 或者 curl 看一下内容是什么,或者把浏览器的 js 关了浏览一下“网站根目录”。

网站网址贴出来,看下实际情况

@yszou wget和curl不太会用。但是我直接访问https://www.xx.com/bdunion.txt可以读取到文件内容,用IDM输入这个地址也可以下载文件,网站是使用的express框架设置的静态目录是public,这应该就是所谓的“根目录”,我检查过了文件在里面。

现在百度的验证文件已经删了,我们又尝试用搜狗联盟,还是不行。搜狗的文件还没删。可以通过https://www.yiqiniu.com/54fc9190e1c241d39e80468e5e2d03b9.html直接访问到。

搜狗联盟有什么验证要求

@fancylife 都是差不多的。搜狗要求把html文件放根目录,百度的是txt文件。这是第一种方式,第二种方式都是在<head></head>加内容。步骤都一样的。

@dolphinfine

但是我直接访问https://www.xx.com/bdunion.txt可以读取到文件内容

浏览器打开隐身模式再访问呢。

@yszou 刚刚试了也没问题

所谓配置域名的根目录是什么意思?是不是通过express设置的静态文件夹?我通过https://www.xxx.com/bdunion.txt可以访问到,是不是说明我放的位置是正确的?

是爬虫还没法做 https 或者是 处理 重定向吧,你可以先把重定向去掉试试

image.png 访问http的话又有一次301 可以尝试把百多或者搜狗的网站地址那里加上https://www.xx.com 应该是默认读取的http://www.xx.com

如果不行的话,就临时开启一下http的服务,应该就行了

@rxk666666 感谢,刚才百度回邮件说不支持https。

@doxiaodong 谢谢了。百度说不支持https

感谢楼上的各位,百度回邮件说不支持https image.png

回到顶部