关于方案:公司有一客户,需要访问我们的业务接口,但是他们的服务器在内网里面,不能访问外网,但是局域网里面的其他服务器能够上网,所以想在局域网里面配置代理,能够实现代理访问。
(1)需要的软件和以及基本的需求
nginx软件 一台能够上外网的主机。
nginx 软件 http://nginx.org/en/download.html 可以在官网下载,下载后解压,可以点击setup安装,但是这里需要注意默认端口为80端口,防止主机的80端口被占用。
(2)几个常用的nginx命令
start nginx
nginx -s reload 重新加载配置文件
nginx -s stop 停止
nginx -s quit 停止
tasklist /fi "imagename eq nginx.exe" 可以查看其进程等信息
注意:我们还可以到logs 目录下查看日志,查看access.log,error.log两个文件。就可以看到其相关的日志信息。 还需要注意防火墙问题,以免不能正常访问。
(3)启动nginx ,可以用start nginx命令,也可以用set up启动,在浏览器里面访问,能出现页面就是正常的。
(4)代理的配置
1、在#gzip on;处开启该配置,并添加以下等配置,这样为了代理过程中对文件的处理。
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 4;
gzip_vary on;
gzip_types text/plain text/css text/xml application/x-javascript application/xml application/atom-xml text/javascript;
2、代理部分的配置
server {
listen 8011;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
location /SendMsg {
proxy_pass http://192.168.1.198:1210/Services/MsgSend.asmx/SendMsg;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /GetReport {
proxy_pass http://192.168.1.198:1210/Services/MsgSend.asmx/GetReport;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
这样就可以了,由于我们更改了配置文件,需要重新启动服务,主要就是为了加载配置文件。
重启成功后就可以访问测试了。
这个就是我们的接口回传的参数了,本文中将我们的地址做了更改,用了内网地址演示了一下。此方案只是我们的一个案例的笔记,仅供大家参考。
本文转自 tianya1993 51CTO博客,原文链接:http://blog.51cto.com/dreamlinux/1825995,如需转载请自行联系原作者