Nginx正向代理

来源:互联网 发布:scrollreveal.js实例 编辑:程序博客网 时间:2024/05/16 17:44

原文:http://www.blogjava.net/fastzch/archive/2009/01/12/250956.html

Nginx常用来做反向代理,但是作为正向代理大家有没有试过呢?

咱们公司有的服务器不能上外网,在这种情况下装软件比较麻烦,所以考虑通过能上外网的机器提供正向代理。

Nginx配置如下:

server{
        resolver x.x.x.x;
        listen 82;
        location / {
                proxy_pass http://$http_host$request_uri;
        }
}

注意项:
1. 不能有hostname
2. 必须有resolver, 即dns,即上面的x.x.x.x,换成你们的DNS服务器ip即可
3 . $http_host和$request_uri是nginx系统变量,不要想着替换他们,保持原样就OK。(通过修改$http_host或者$request_uri来改变重定向。。。)

查看dns方法
cat /etc/resolv.conf

代理使用

在需要访问外网的机器上执行以下操作之一即可:
1. export http_proxy=http://yourproxyaddress:proxyport
2. gedit ~/.bashrc  
    export http_proxy=http://yourproxyaddress:proxyport
yourproxyaddress也就是你的Nginx服务器的ip了,proxyport就是上面配置中的82,可以根据自己的需要修改。


server {    listen 80 default;#   server_name _;    resolver 202.101.172.47;        access_log /var/log/nginx/localhost.access.log;    #set $vhost www.baidu.com;    location / {         proxy_pass http://$http_host$request_uri;        proxy_set_header Host $host; #可不加        proxy_set_header X-Real-IP $remote_addr;  #可不加    }   }







原创粉丝点击