需求前提:由于公司网站做了SEO,不定时会有大量搜索引擎的爬虫过来访问,当爬虫的并发量特别大的时候,会导致网站整体被拖垮。
解决办法:将我们网站的某些页面生成静态的html文件,并将所有该路由的html页面全部存储到七牛的对象存储上去,再通过nginx的代理转发,将爬虫的访问从我们自己的网站,转发到对象存储上已经生成好的html文件。
例如:我们本来网站的访问地址是 https://a.xxx.com/qazt/detatil/1, 要转发到 https://src.xxx.com/pc/qazt/detail/1.html。
nginx配置:
location /qazt/detail/ {
rewrite ^/qazt/detail/(.*)$ /pc/qazt/detail/$1.html break;
proxy_pass https://src.gplayspace.com;
}
rewrite ^/qazt/detail/(.*)$ /pc/qazt/detail/$1.html break;:将 qazt/detatil/1访问转发成 /pc/qazt/detail/1.html
proxy_pass https://src.gplayspace.com : 将访问代理到https://src.gplayspace.com 域名