nginx配置原理精简版

Posted Fire king

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx配置原理精简版相关的知识,希望对你有一定的参考价值。

		   		 						监听自己的portA(应用可以自定义进入程序的port)
		   服务器B的ipA:portA				      服务器A的serve_name(nginx的宿主机)						
				服务器A--------------------------------->服务器A---------------------------->转发
       虚拟域名<=>服务器B的ipA:portA		

客户端通过域名访问服务器时会将域名与被解析的ip一同放在请求中。当请求到了nginx中时。nginx会先去匹配ip,如果listen中没有找到对应的ip,就会通过域名进行匹配,匹配成功以后,再匹配端口。当这三步完成,就会找到对应的server的location对应的资源。

总结:

nginx的serve_name的值一定是宿主机的ip,
至于 listen的port,可以自定义,这就形成了 ip+port=应用层程序,无论哪里来的访问请求: 宿主机ip:port 就会访问到nginx,这时nginx就会按配置文件定义的规则去转发。

动静分离
访问:http://localhost/项目名称

server 
        listen       80;
        server_name  localhost;
	location / 
            proxy_next_upstream http_502 http_504 error timeout invalid_header;
            proxy_pass http://localhost:8082;
            # 真实的客户端IP
            proxy_set_header   X-Real-IP        $remote_addr; 
            # 请求头中Host信息
            proxy_set_header   Host             $host; 
            # 代理路由信息,此处取IP有安全隐患
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
            # 真实的用户访问协议
            proxy_set_header   X-Forwarded-Proto $scheme;
	
		
	#静态文件交给nginx处理
	location ~ .*\\.(htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|
	zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$
	
		root /static;  //static目录在nginx目录下,与conf同级
		expires 30d;
	
	#静态文件交给nginx处理
	location ~ .*\\.(js|css)?$
	
		root /static;  //static目录在nginx目录下,与conf同级
		expires 1h;
	
 
        #error_page  404              /404.html;
 
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html 
            root   html;
        
    

以上是关于nginx配置原理精简版的主要内容,如果未能解决你的问题,请参考以下文章

nginx负载均衡精简配置实例

[置顶][终极精简版][图解]Nginx搭建flv mp4流媒体服务器

Apache vs. Nginx

JS 深入浅出This指向(精简)

nginx工作原理与配置

自动精简配置(Thin Provision)介绍