注意:Nginx正向代理上网。不能代理https类型的网站!!!

 

因为公司服务器网络策略做的比较严格,应用服务器除了nginx,其他的都不能上网。但是现在业务需要。
几台tomcat服务器能够解析并访问来自于公网的url地址。所以我决定在nginx做正向代理。

 

问题1Nginx能做了反向代理负载均衡,还能做正向代理吗?
答案1:可以。因为正向代理反向代理都是一个虚拟主机的配置而已,相当于两个不同功能的网站。互不影响

server {

        listen 8092;

        location / {

            # 配置 DNS 解析 IP 地址,以及超时时间,

            resolver 219.149.6.99 114.114.114.114;

            resolver_timeout 30s;

            proxy_pass $scheme://$host$request_uri;

            # proxy_set_header 部分的配置,是为了解决如果 URL 中带 "."(点)后 Nginx 503 错误

            proxy_set_header Host $http_host;

            # 配置缓存大小,关闭磁盘缓存读写减少I/O,以及代理连接超时时间

            proxy_buffers 4 256k;

            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;

        }

        access_log logs/proxy-$host-aceess.log main;

        error_log  logs/proxy-$host-error.log;

    }

 

 

  配置好后 nginx -t 测试语法是否正常。然后重启nginx让配置生效。
 
####################################Linux配置代理客户端上网######################################

打开/etc/profile在文件最后最末尾加入一下配置。

    http_proxy=http://10.101.155.112:9988
    ftp_proxy=ftp://10.101.155.112:9988
    export http_proxy ftp_proxy
    
    source /etc/profile 让环境变量生效。
    
然后 curl www.osyunwei.com  看看能不能获取到数据。

######################################################################################################