求助! nuxt+nginx 部署的网站在部分网络环境下遇到 403 问题

2020-03-04 19:32:52 +08:00
 jiaW
小白一枚,最近做的项目用的是 Nuxt+nginx+php。这个项目比较特殊,前端与后端代码不在同一域名,后端设置了 access-control-allow-orign,Access-Control-Allow-Headers,Access-Control-Allow-Methods。我访问没问题,但是客户那边网络环境下总是隔几分钟出现 403 问题,求懂的大佬指点一下。
2069 次点击
所在节点    NGINX
8 条回复
jiaW
2020-03-04 19:52:16 +08:00
![图 1][ ]
also24
2020-03-04 19:56:57 +08:00
jiaW
2020-03-04 20:01:47 +08:00
jiaW
2020-03-04 20:02:00 +08:00
@also24 谢谢
also24
2020-03-04 20:15:32 +08:00
从第二张图来看,403 似乎是 Mikrotik HttpProxy 返回的

看起来这是 MikroTik RouterOS 的一个功能:
https://wiki.mikrotik.com/wiki/Manual:IP/Proxy#Options

猜测是你客户那里使用这个功能配置了类似『透明缓存』之类的功能

具体是谁配置的,可能要看下你客户那里的网络环境的(公司网管?二手宽带?)
jiaW
2020-03-04 20:56:30 +08:00
@also24 我对网络这块了解不多。‘However, in this case, proxy users may have trouble to reach web pages which are accessed transparently.’ 求问为什么代理用户在透明缓存这种模式下会发生问题?因为项目面临的网络环境是多样的,这种情况下从项目本身出发有没有可解决的方法?从网络环境来说的话是得添加防火墙规则吗?
also24
2020-03-04 21:06:47 +08:00
@jiaW #6
我换句话来说:这情况很有可能完全是你客户自身的网络问题。


但是要确认这个问题需要想很多办法去验证,即使确认了,想要修改未必会容易。

综上,我更建议你直接使用 nginx 反代 API 请求到同一域名的方式,来变跨域为同域。
(从截图中来看,API 接口似乎全都在同一前缀下,这有利于 nginx 匹配反代)
jiaW
2020-03-05 18:23:15 +08:00
@also24 解决了,感谢。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/649880

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX