nginx不仅可以来做反向代理,也可以用来做正向代理(透明代理,代理上网),nginx反向代理看这里

反向代理,外部机器通过网关访问网关后面服务器上的内容,网关起到了反向代理的功能,我们平时通过浏览器访问远程的web服务器大都是这样实现的。

正向代理,就是上面的过程反过来,我们平时说的代理上网,局域网中的用户通过网关做代理访问外部的网络。

nginx同样可以实现代理上网的功能,配置如下:

user www;worker_processes 1;error_log /var/log/nginx/error.log debug;events {
	use epoll;
	worker_connections 1024;}http {
	resolver 8.8.8.8;
	server {
		listen 8088;
		location / {
			proxy_pass http://$http_host$request_uri;
		}
	}}

nginx实现代理上网,有三个关键点必须注意,其余的配置跟普通的nginx一样
1.增加dns解析resolver

2.增加无server_name名的server

3.proxy_pass指令

具体实现步骤:
1.把如下配置填到你的配置文件http作用域,

    resolver 8.8.8.8;
	server {
		listen 8088;
		location / {
			proxy_pass http://$http_host$request_uri;
		}
	}

2.重启nginx使配置文件生效

3.设置ie代理

nginx 正向代理配置_server

4.可以使用代理上网了。

可以访问http://ip.quancha.cn检测代理是否生效
使用nginx代理上网后
nginx 正向代理配置_局域网_02

使用nginx代理上网前
nginx 正向代理配置_局域网_03