nginx静态资源无法访问问题(nginx入口搞错问题)

场景是将静态资源打包到jar(传统springboot项目)中,nginx原本配置为:

location /example {
          
   
 proxy_redirect off;
 proxy_pass http://ip:端口/index;

  proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;


 }

网页可以访问到,但静态资源访问不到 打码部分为nginx所在机器,这个请求网址没问题,毕竟页面也正常跳转了

解决办法:

location / {
          
   
	proxy_redirect off;
	proxy_pass http://ip:端口;
	proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

将nginx指向应用所在的ip+端口即可 再访问http://nginx所在机器ip:监听端口号/你网站的路由 即可访问成功

原因: nginx在错误的配置中,将应用的/index作为入口,而静态资源是在根目录(classpath下)下,所以访问不到,入口搞错了,入口应该设置成最根的入口,也就是直接ip+端口,再在这个入口的基础上去访问静态资源就行了

经验分享 程序员 微信小程序 职场和发展