在弄清动静分离之前,我们要先明白什么是动,什么是静。在Web开发中,通常来说,动态资源其实就是指那些后台资源,而静态资源就是指HTML,JavaScript,CSS,img等文件。

   一般来说,都需要将动态资源和静态资源分开,将静态资源部署在Nginx上,当一个请求来的时候,如果是静态资源的请求,就直接到nginx配置的静态资源目录下面获取资源,如果是动态资源的请求,nginx利用反向代理的原理,把请求转发给后台应用去处理,从而实现动静分离。

   在使用前后端分离之后,可以很大程度的提升静态资源的访问速度,同时在开过程中也可以让前后端开发并行可以有效的提高开发时间,也可以有些的减少联调时间 。

所以动静分离是将网站静态资源(HTML,JavaScript,CSS,img等文件)与后台应用分开部署,提高用户访问静态代码的速度,降低对后台应用访问。
动静分离的一种常用做法:将静态资源部署在nginx上,后台项目部署到应用服务器上,根据一定规则静态资源的请求调度到nginx服务器,达到动静分离的目标。

server {

        listen 80;

        server_name  hahashen.com;

        access_log  /data/nginx/logs/hahashen.com-access.log main;

        error_log  /data/nginx/logs/hahashen.com-error.log;

 

        #动态访问请求转给tomcat应用处理

        location ~ .(jsp|page|do)?$ {      #以这些文件结尾的

           proxy_set_header  Host $host;

           proxy_set_header  X-Real-IP  $remote_addr;

           proxy_pass http://tomcat地址;

        }

#设定访问静态文件直接读取不经过tomcat

location ~ .*.(htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$  {     

           expires      30d;

           root /data/hahashen/html ;

        }

}



©著作权归作者所有:来自51CTO博客作者mob604756e834f7的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 闲聊Kubernetes Pod垂直自动伸缩(VPA)
  2. thinkPHP6框架基础知识
  3. 从某人的公众号学到一个网上学习资源搜索技巧
  4. 基于SSH框架的人力资源管理系统设计与实现
  5. Docker容器实战之数据持久化+网络模式+资源限制
  6. kubernetes系列文章第二篇-kubectl
  7. Cloudam云端云E算力平台在人工智能模型训练中的应用
  8. Vue+Django独立开发电商项目
  9. TCPIP卷一(3):静态路由与CEF下的负载均衡

随机推荐

  1. (20120808)(01)android菜单与对话框--之日期
  2. android 获得屏幕宽度 高度
  3. 在AndroidManifest.xml文件中的android:w
  4. Widget动态换背景图片 android
  5. Android--通过关键字查找短消息数据库并
  6. android Activity单元测试
  7. 2013.06.26——— android 关于Scroller
  8. (android高仿系列)今日头条 --新闻阅读器 (
  9. Android 主题(Theme)实现
  10. Android环境配置