Nginx 实现直接访问百度验证 html 文件
案例如下:
客户的子站提交百度搜索入口地址,需要在网站跟目录增加验证文档,具体情况如下:
百度要求目标URL:https://xx.edu.gov.cn/baidu_verify_codeva‑du2hPff7hQ.html实际文件物理路径:/data/www/webfuture/wwwroot/upload/xx/baidu_verify_codeva-du2hPff7hQ.html
Nginx配置文件块调整:
... ...
location = /baidu_verify_codeva-du2hPff7hQ.html {
alias /data/www/webfuture/wwwroot/upload/xx/baidu_verify_codeva-du2hPff7hQ.html;
# 清除全局CSP,防止百度验证失败
add_header Content-Security-Policy "";
# 关闭缓存,方便百度实时抓取
expires -1;
}
... ...
CSP响应头是全局的,静态 html 验证页也会带上,百度爬虫校验的时候,少数场景会校验失败(页面本身能打开,但是百度核验不通过)。
nginx -t # 校验nginx配置
nginx -s reload #重载nginx生效
快速自检:
访问:https://xx.edu.gov.cn/baidu_verify_codeva-du2hPff7hQ.html看响应头,CSP 为空,状态 200,内容和百度给的一致即可。等待百度搜索引擎验证通过