Nginx中的坑

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

我需要配置Nginx转发到阿里云的OSS下载文件。一开始我按照这样的配置

proxy_pass http://tlwl-file.vpc100-oss-cn-beijing.aliyuncs.com/$dir/${mailno}.pdf

 

    结果错误日志一直显示“tlwl-file.vpc100-oss-cn-beijing.aliyuncs.com could not be resolved (110: Operation timed out) while sending to client”。我自己 ping也是可以ping通的。一直想不明白为什么Nginx就不能解析这个域名了。后来才发现Nginx是自己的解析域名。于是我在Nginx的开头加上 resolver 8.8.8.8; 重启一样的效果。我自己ping8.8.8.8结果才发现自己的ECS根本不能上网。于是我把resolver设置为cat /etc/resolv.conf 的一个域名服务器。重启就正常了

     另外我还想到既然你不能解析域名那我就直接写IP,proxy_pass http://123.123.123.123/$dir/${mailno}.pdf 。结果发现OSS禁止IP访问,于是加上头

proxy_set_header Host tlwl-file.vpc100-oss-cn-beijing.aliyuncs.com 即可。

 

 

转载于:https://my.oschina.net/u/778875/blog/1549600

你可能感兴趣的:(Nginx中的坑)