动静分离的原理很简单,通过location对请求url进行匹配即可,在/Users/Hao/Desktop/Test(任意目录)下创建 /static/imgs 配置如下:
###静态资源访问 server { listen 80; server_name static.jb51.com; location /static/imgs { root /Users/Hao/Desktop/Test; index index.html index.htm; } } ###动态资源访问 server { listen 80; server_name www.jb51.com; location / { proxy_pass http://127.0.0.1:8080; index index.html index.htm; } }
别一种按访问资源配置
server { listen 80; server_name jb51.net; access_log /data/nginx/logs/jb51.net-access.log main; error_log /data/nginx/logs/jb51.net-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/web/html ; } }
SOA
面向于服务器开发,后台和前端都采用调用接口方式。将一个项目拆分成一个控制Web
(前端)和接口(后端),最终使用rpc远程调用技术。视图层和业务逻辑层拆分,中间采用RPC
远程调用技术url
后面会加上一个时间戳?他的作用:控制缓存
生产环境中js css最后一次的修改时间与客户端缓存的最后一次修改的时间可能会产生
冲突。服务器在2018年5月22日上线,用户在2018年6月01日访问,用户上线新js文件在2018年06月5日最后一次修改时间还是保留上次上线时间。所以一般来说在服务器上线的时候,都会在静态资源上加上时间戳 强制最新的资源
更多关于Nginx动静分离配置实现请查看下面的相关链接