请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于反向代理后静态资源路径访问问题!

老师您好,现在我有个域名例如 www.abc.com
我将koa项目部署到了服务器,监听3000端口
通过nginx反向代理 www.abc.com/fitapp 到3000端口
现在遇到了一个问题就是当我访问地址 www.abc.com/fitapp/images/a.png
我想要的效果是 访问下面路径的静态资源

koa项目根目录下/static/images/a.png

实际结果访问的是

koa项目根目录下/static/fitapp/images/a.png

如果将3000端口监听到根目录直接访问 www.abc.com/images/a.png 就不会出现这种情况,请问老师我反向代理后如何访问 www.abc.com/fitapp/images/a.png 后忽略掉fitapp这个目录呢,这个/fitapp/我只想让他代理到3000端口

这是 koa-static的配置

app.use(static(path.join(__dirname,"./static")))

nginx的配置

location /fitapp/ {
			proxy_pass http://localhost:3000;
		}```

正在回答 回答被采纳积分+3

2回答

许愿瓶啊 2019-12-18 21:38:58

如果是用webpack打包的前端项目的话,webpack有个配置publicPath,你将它配置成/fitapp就可以访问了,它会把所有静态资源加上这个前缀

1 回复 有任何疑惑可以回复我~
7七月 2019-11-20 15:42:11

这个一般不会这么配置,你一个koa应用就是一个独立的网站,不应该存在 子目录吧?这个和子目录是没关系的。这个甚至我觉得和nginx都没关系,你配置的这个静态资源,本身脱离nginx是怎么访问的?

0 回复 有任何疑惑可以回复我~
  • 提问者 frankin329 #1
    老师您好 意思是一个koa项目应该独立一个网站 例如用二级域名来映射到服务器地址3000端口吗 例如 koa.abc.com  而不是像我那样
    回复 有任何疑惑可以回复我~ 2019-11-20 15:46:35
  • 7七月 回复 提问者 frankin329 #2
    本来就是,不同的域名直接通过nginx的虚拟域名映射的本地的localhost:3000等不同的端口。
    回复 有任何疑惑可以回复我~ 2019-11-21 01:10:28
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信