nginx简单代理配置

原文:https://my.oschina.net/wangnian/blog/791294

 

前言  Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。因为域名只能解析80端口,所以必须需要nginx代理访问。

1.首先下载nginx

   http://nginx.org/en/download.html

启动方式  start nginx 启动

              nginx.exe -s stop 停止

2.代理的方式

       server
         {
            listen      81 ;
            server_name  www.baidu.com default;
            index index.html;
            root /data/abc/;
            
            #auth_basic "input you user name and password";
            #auth_basic_user_file /data/test_pwd;
                  
            location / {
                root   /data/abc/;
                index  index.html index.htm;
            }   
         }  


    server
         {
            listen      80 ;
            server_name  www1.baidu.com default;
            #auth_basic "input you user name and password";
            #auth_basic_user_file /data/test_pwd;
                  
            location / {
               proxy_pass http://localhost:8084; 
               proxy_set_header   Host    $host; 
               proxy_set_header   X-Real-IP   $remote_addr; 
               proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for; 
            }   
         }      
   

添加一个 server的节点

listen 80 监听80端口

server_name  域名的地址  如果访问的是weixin.wangnian.com就走代理 

location  /   访问根路径就走代理

代理可以直接是服务器的位置 也可以代理请求地址

 直接访问服务器的位置 

 root   /data/abc/;
 index  index.html index.htm;

proxy_pass配置为:代理的地址

proxy_set_header   Host    $host; 
proxy_set_header   X-Real-IP   $remote_addr; 
proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for; 

以上三个配置,如果反向代理服务器不重写该请求头的话,那么后端真实服务器在处理时会认为所有的请求都来在反向代理服务器条负载均衡的配置

 

3.负载均衡配置

	upstream weixin {                                                         
		server 127.0.0.1:8083;                                                
		keepalive 2000;
	}
	 server {
	    listen  80;                                                         
	    server_name   weixin.wangnian.com;                                               
	    client_max_body_size 1024M;
	    location / {
	        proxy_pass http://weixin/;
	        proxy_set_header Host $host:$server_port;
    }

  在http节点下,添加upstream节点,可以配置多个服务器地址server,配置多个服务器地址需要配置相应的权重。

 添加一个 server的节点

 listen 80 监听80端口

 server_name  域名的地址  如果访问的是weixin.wangnian.com就走代理 

 location  /   访问根路径就走代理

 proxy_pass配置为:http:// + upstream名称,即“http://weixin/” 

 proxy_set_header Host $host:$server_port; 允许重新定义或者添加发往后端服务器的请求头

posted @ 2018-08-27 18:30  这个名字想了很久~  阅读(18117)  评论(0编辑  收藏  举报