Nginx是一种常用的服务器,动态和静态分离是实际应用中常见的场景Nginx实现动静分离它能达到高效合理的结构效果。动态和静态分离将网站静态资源与背景应用程序分开部署提高用户访问静态代码的速度,减少后台应用程序访问。在这里,我们将Nginx将动静分离的相关内容整理在一起,方便大家学习。
在学会在Nginx实现动静分离之前,首先要明白什么是动,什么是静,了解动静分离后才能学会Nginx实现动静分离。在在Web开发中,动态资源是指背景资源,静态资源资源包括HTML,JavaScript,CSS,img等文件。一般来说,动态资源和静态资源需要分开,静态资源部署在Nginx上,当请求来时,如果是静态资源请求,直接到Nginx配置的静态资源目录获取资源,如果是动态资源请求,Nginx使用反向代理原理,请求转发到后台应用程序处理,以实现动态和静态分离。使用前后端分离后,静态资源的访问速度可以大大提高。同时,在开发过程中,前后端开发可以平行有效地提高开发时间,也可以部分减少联合调整时间。
Nginx的负载平衡与静态代理相结合,Nginx便可实现动静分离,在实际应用中,这是一种常见的场景。例如,动态资源tomcat或其他web服务器完成jsp;图片等静态资源,css、nginx服务器完成js等,他们各司其职,专注于做自己擅长的事情,动静分离充分利用各自的优势,实现更高效合理的架构。
Nginx实现动静分离案例:
(1)负载均衡Nginx配置:
upstream www.web.com {
server 127.0.0.1:9100 weight=5;
server 127.0.0.1:9200 weight=2;
}
upstream static.web.com {
server 127.0.0.1:81 weight=1;
server 127.0.0.1:82 weight=1;
}
location /web{
proxy_pass http://www.web.com;
}
location ~ .*(css|js|img|images) {
proxy_pass http://static.web.com;
}
(2)Nginx配置静态代理:
location ~ .*(css|js|img|images) {
root /opt/static;
}
以上简单介绍什么是动静分离?为什么?利用Nginx实现动静分离以及Nginx实现动静分离案例,事实上,动静分离的实现是在实现在Nginx反向代理的基础上实现的。对于Nginx更多的学习内容,可以在“反向代理服务器Nginx实践”本文介绍了本课程的学习本课程还涉及Nginx实现动态和静态分离的内容,因此不清楚或想学习Nginx其他知识的朋友可以在本视频课程中找到答案。