nginx配置原理精简版

nginx配置原理精简版,第1张

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;
        }
    }

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5181544.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-18
下一篇2022-11-18

发表评论

登录后才能评论

评论列表(0条)

    保存