Nginx动静分离技术详解(原理+配置+案例)

内容分享2个月前发布
0 1 0

关注mikechen十余年BAT架构经验倾囊相授!

Nginx动静分离技术详解(原理+配置+案例)

Nginx是大型架构的必备技能,下面我详解Nginx动静分离技术@mikechen

文章来源:mikechen.cc

Nginx动静分离

动静分离:是一种将动态请求、和静态请求,分开处理的Web架构优化策略。

Nginx动静分离技术详解(原理+配置+案例)

Nginx动静分离,就是将网站的静态资源(如HTML、CSS、JavaScript、图片等)。

和动态内容(如PHP、Python等动态生成的页面),分别由不同的服务器或服务处理。

Nginx动静分离原理

Nginx通过配置不同的location、和upstream,可以轻松实现动静分离。

整体实现,如下图所示:

Nginx动静分离技术详解(原理+配置+案例)

如果URL匹配到预设的静态资源规则(例如.html, .css, .js, .jpg, .png等后缀),Nginx会直接从本地文件系统、或缓存中返回这些静态文件。

如果URL匹配到动态资源规则(例如.php, .jsp, /api/等路径),Nginx会将请求转发给后端的应用服务器处理。

配置,如下:

server {    listen 80;    server_name example.com; # 静态资源处理    location ~* .(jpg|jpeg|png|gif|css|js)$ {        root /data/static/;        expires 30d;# 设置浏览器缓存} # 动态请求转发    location /{        proxy_pass http://backend_server;}}

匹配静态资源:通过正则表达式或文件后缀(如.jpg、.css、.js)指定静态资源的路径,直接由Nginx提供服务。

匹配动态资源:通过URL特征(如/api/或.php)将请求转发给后端服务器。

以上

文章来源:mikechen.cc

© 版权声明

相关文章

1 条评论

  • 头像
    钟世宇 读者

    收藏了,感谢分享

    无记录
    回复