Linux Study Lab !

当前位置:   网站首页 >> Linux 应用实践

Nginx 正向代理与反向代理应用

1、正向代理 Nginx正向代理主要用于内部网络通过代理服务器跳板访问外部网络,如专有一台服务器上有VPN或SS可以访问到外部网络,内部网络的终端可以将浏览器的代理服务器设置为专有的服务器地址和端口已获得访问外部网络的能力。

 简易配置(nginx.conf)如下:

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

此时在终端的浏览器上设置代理服务器信息即可,此处假设专有服务器地址为192.168.100.1,上述nginx中定义的端口为8088。

未命名.png

配置完成后,即可通过专有服务器代理出口访问外网。


2、反向代理


简易配置文件范例

cat /etc/nginx/conf.d/proxy.conf 
upstream nodes {
    ip_hash;
    server 192.168.100.1:8081;
    server 192.168.100.2:8081;
}
server {
    listen   80;
    server_name  _;
    access_log  /dev/null;
    error_log  /home/www/error.log;
    location / {
        proxy_pass http://nodes;
        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;
        proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
        
        client_max_body_size    100m;
        client_body_buffer_size 128k;
        proxy_max_temp_file_size   0;
        proxy_connect_timeout      90;
        proxy_send_timeout         90;
        proxy_read_timeout         90;
        proxy_buffer_size          4k;
        proxy_buffers              32 4k;
        proxy_busy_buffers_size    64k;
        proxy_temp_file_write_size 64k;
        error_page   500 502 503 504  /50x.html;
        error_page   404              /40x.html;
     }
}

同时,需要在两台服务器上都存在监听8081端口的相应的站点文件。


发表我的评论

Hi,您需要填写昵称和邮箱!

  • 必填项
  • 必填项