解决Nginx反向代理后无法加载静态文件的问题

       最近公司项目在做一个反向代理,反向代理成功后基本一切正常,只有静态文件无法加载。

比如我这里的原域名的*.test.com现在想通过*.bbs.test.com访问的时候就挂到*.test.com.但是

当访问*.bbs.test.com/css/XXX时却访问不到原服务器上的CSS文件。

费了点时间才找到解决方案,开始一直是想着在原服务器端里配置重新规则什么的,

搞了很久没实现,差点吊死在一棵树上。后来发现是在代理服务器端配置。

以下是代理服务器端的配置,他主要是将*.test.com的域名代理到 *.bbs.test.com这个域名下面


  server {
111         listen  80;
112         server_name ~^(.*).test.com;
113         set $domain $1;
114 
115 
116         location /bbs/ {
117             proxy_pass $scheme://$domain.bbs.test.com;
118             proxy_set_header  X-Real-IP  $remote_addr;
119         }
120 
121         location /bbs/css/ {                                                                                                       
122             alias /var/www/html/test/css/;##这里是原服务器端的静态文件路径
123             autoindex on;
124         }
125 
126     }


另外一个解决方法就是在我们原服务器端进行配置,在请求到达原服务器端的时候进行重写:

 99         location ~ /bbs/css/ {
100             rewrite ^(.*)css(.*)$  /css$2 break ;
101         }

我这里只以css为例 ,其他按需求添加 直接在判断条件里加 | (或)条件即可

大神勿扰,主要是刚接触Nginx,所以在这里做下笔记,希望能帮到像我一样的菜鸟们。

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值