nginx配置文件动静分离配置:
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
#静态文件html页面的存储目录 (这个是本地)
location /dms.web {
root D:/workspace/Dev1.0;
index html/login.html index.html;
}
#动态请求的转发
location /dms.sysAuth {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://xxxxx.yyy.mmm:端口/dms.sysAuth;
}
}
浏览器请求页面的路径
再看本地页面存放的路径
可以看到,浏览器localhost后面的路径+nginx配置的静态文件存储路径正好等于该页面在本地的路径。
动态请求也是同样的道理,当请求来到nginx时,找到nginx配置动态请求转发的路径,按照proxy_pass后面的路径取匹配tomcat中的路径,这样的话就实现了动态请求和静态文件访问的服务器不同,实现了项目的动静分离。