Nginx正向代理
前言
有些时候总要避开某些限制,添加或是换一个网关出口,于是网络跳板即代理服务便派上了用场,故有此文备忘。同时也希望亦可帮到有同样需求的朋友。
配置
server {
#配置DNS用于解析传过来的url地址
resolver 10.11.20.188;
#超时时间(5秒)
resolver_timeout 5s;
#对外开放的端口
listen 8058;
#对外开放的地址,也可以是域名只要能解析过来
server_name 15.165.126.216;
#charset koi8-r;
#
#access_log logs/host.access.log main;
location / {
#为代理请求添加一些header,host是为了解决如果 URL 中带 “.”(点)后 Nginx 503 错误。其他可以不加。
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#代理请求地址规则
proxy_pass $scheme://$host$request_uri;
#配置缓存大小,关闭磁盘缓存读写减少I/O,以及代理连接超时时间
proxy_buffers 256 4k;
proxy_max_temp_file_size 0;
proxy_connect_timeout 30;
#配置代理服务器 Http 状态缓存时间,可以去掉注释使用
#proxy_cache_valid 200 302 10m;
#proxy_cache_valid 301 1h;
#proxy_cache_valid any 1m;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
番外
不过用nginx做正向代理不过是为了图方便,简单快捷,但是Nginx 不支持 CONNECT,所以无法正向代理Https协议,如淘宝登陆,网上银行等。所以如果希望支持安全协议还是要靠专业的代理服务,个人比较推荐的是tinyproxy,小巧精悍,支持http和https,灰常给力!