需求:因为项目的需要,要求内网server能够访问公网地址,进而抓取互联网上数据,抓取之后,供正式的web使用;众所周知,内部的server服务器一般是不提供对外访问的,同时也不应该为其提供公网访问权限,因此考虑到使用前端nginx做反向代理,实现内部sever的访问:
内部服务器IP: 10.100.20.100 && 10.100.20.101 nginx 内网IP : 10.100.20.99
在 nginx.conf 文件中作如下修改:
server{
resolver 202.106.0.20;
listen 8002;
location / {
proxy_pass $host$request_uri;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
allow10.100.20.0/24;
denyall;
}
}
其中 resolver 为DNS地址,一般建议与nginx服务器本身的DNS服务器一致:
其次就是配置后端 server 的代理信息了:
linux 机器,执行: vim /etc/profile增加 export http_proxy=http://10.100.20.99:8002
source /etc/profile 即可
windows 机器,在IE选项中选择 - 连接 - 局域网设置 - 配置代理服务器,将相应IP,监听端口填入即可