绕过网关图片上传

参考图片上传和nginx代理图片访问

图片上传

https://www.cnblogs.com/TJ21/p/12609112.html

代理图片访问

https://www.cnblogs.com/TJ21/p/12609017.html

绕过网关图片上传方式:

绕过网关:直接访问图片上传微服务

 

我们这里的微服务的端口为 8082

注意:原则上,我们是不能把除了网关以外的服务对外暴露的,不安全。

 

 采取nginx从写访问路径的方绕过网关直接访问图片上传微服务

nginx配置路径重写

rewrite "用来匹配路径的正则" 重写后的路径 [指令];

完整代码

View Code

- 首先,我们映射路径是/api/upload,而下面一个映射路径是 / ,根据最长路径匹配原则,/api/upload优先级更高。也就是说,凡是以/api/upload开头的路径,都会被第一个配置处理

- `proxy_pass`:反向代理,这次我们代理到8082端口,也就是upload-service服务

- `rewrite "^/api/(.*)$" /$1 break`,路径重写:

  - `"^/api/(.*)$"`:匹配路径的正则表达式,用了分组语法,把`/api/`以后的所有部分当做1组

  - `/$1`:重写的目标路径,这里用$1引用前面正则表达式匹配到的分组(组编号从1开始),即`/api/`后面的所有。这样新的路径就是除去`/api/`以外的所有,就达到了去除`/api`前缀的目的

  - `break`:指令,常用的有2个,分别是:last、break

    - last:重写路径结束后,将得到的路径重新进行一次路径匹配
    - break:重写路径结束后,不再重新匹配路径。

    我们这里不能选择last,否则以新的路径/upload/image来匹配,就不会被正确的匹配到8082端口了

修改完成,输入`nginx -s reload`命令重新加载配置。然后再次上传试试

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BaldHead's Blog

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值