nginx静态资源配置

解决EE工程中静态文件显示问题

在工程中本地测试没有问题,发现使用nginx配置了路径的页面,会获取不到相应页面的静态文件问题

静态文件的路径类似为: http://localhost:8080/salama/static/js/lib/jquery.js
引用此静态文件的实际路径为: http://localhost:8080/salama/userInfo/?log=aaa&gender=1&city=bj (访问此页面会传递部分参数,然后打开一个调查问卷页面)
现在给出一个二级域名: api.salama.com 直接使用域名能访问到页面,通过nginx的配置隐藏工程名称和第一级目录名称(salama/userInfo)

nginx的配置为:

 server {
        listen 80;
        server_name api.salama.com;
        location / {
                index index.html index.htm index.jsp;
                proxy_pass http://localhost:8080/salama/userInfo/;
        }
    }

这样配置访问对应页面没有问题,但是无法获取到静态资源文件.
在浏览器控制台看到的静态资源文件请求路径为:

http://api.salama.com/salama/static/js/lib/jquery.js

显然在api.salama.com返回的页面中是无法获取到个静态资源文件的,解决办法如下:

 server {
        listen 80;
        server_name api.salama.com;
        
        location / {
                index index.html index.htm index.jsp;
                proxy_pass http://localhost:8080/salama/userInfo/;
        }

        location /salama/static {
                # 这里可以直接写localhost:8080,nginx会把location后面的参数追加过来,还要注意不要乱添加 /  否则会导致无法访问
                proxy_pass http://localhost:8080;       
        }

    }

参考资料:https://www.nginx.com/resources/admin-guide/

转载于:https://www.cnblogs.com/0xcafedaddy/p/7217885.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值