minio请求地址问题

我的后端minio配置如下:

:
  : http://112.124.71.169:9000
  : minio
  : ****
  : ****

使用绘画功能时,可以在minio里面看到绘制成功的图片。但是前端页面却无法加载页面,日志为:

GET http://172.31.174.206:9000/agi-h5/upload/2024-06-05/1798185089827569666_1717555708736.png net::ERR_CONNECTION_TIMED_OUT。


这里的172.31.174.206 为我的服务器内网ip。我的后端已经配置了 

 http://112.124.71.169:9000

,为什么前端还会用内网ip去请求呢,以至于无法加载图片。
我的minio启动命令如下:

MINIO_ROOT_USER=minio MINIO_ROOT_PASSWORD=cjaidn123 nohup /root/minio/minio server --address :9000 --console-address :37382 --config-dir /root/minio/config /root/minio/data > /root/minio/minio.log 2>&1




请问 如何解决?

评论区

超级管理员

2024-06-05 13:45

用nginx 把minio的地址代理出来,或者配置公网ip,不能配置内网ip的

shixianyu@ivreal.com

2024-06-05 13:56

@超级管理员 112.124.71.169:9000是我的公网ip。奇怪的是后端能正常保存图片到minio,但是访问的时候,就会使用内网ip去访问,导致加载不了图片。

shixianyu@ivreal.com

2024-06-05 13:58

@超级管理员
比如我修改头像,日志如下:
upres= {link: 'http://112.124.71.169:9000/agi-h5/upload/2024-06-05/file-1717567001738_1717567002249.jpeg', domain: 'http://112.124.71.169:9000', name: 'upload/2024-06-05/file-1717567001738_1717567002249.jpeg', originalName: 'file-1717567001738.jpeg', attachId: -1}
pages-index-index.c6561544.js:1 {code: 200, success: true, data: {…}, msg: '操作成功'}
index.0aba1724.js:1 {data: {…}, statusCode: 200, header: {…}, errMsg: 'request:ok'}
index.0aba1724.js:1 {data: {…}, statusCode: 200, header: {…}, errMsg: 'request:ok'}
172.31.174.206:9000/agi-h5/upload/2024-06-05/1798185089827569666_1717555708736.png:1


GET http://172.31.174.206:9000/agi-h5/upload/2024-06-05/1798185089827569666_1717555708736.png net::ERR_CONNECTION_TIMED_OUT

可以看到我成功修改了图片,链接minio是成功了的。但是头像图片加载不出来。原因是用的服务器内网去加载图片

超级管理员

2024-06-05 17:00

图片链接是存在数据库中的,你可以看你chat_wxuser 这个表的用户头像字段 存的是公网的链接 还是内网链接。

shixianyu@ivreal.com

2024-06-05 17:42

@超级管理员 就是存的内网的链接

shixianyu@ivreal.com

2024-06-05 17:43

@超级管理员 难道我数据库要配置为公网连接才行吗:
url: jdbc:mysql://172.31.174.206:3306/h5?u 给内网换成公网?

shixianyu@ivreal.com

2024-06-05 17:53

@超级管理员 我给数据库改为公网链接,然后minio请求也是用的公网了。但是获取请求 URL: http://112.124.71.169:9000/agi-h5/upload/2024-06-05/file-1717581086453_1717581086950.png
请求方法: GET
状态代码: 403 Forbidden
失败
我开放了端口9000的。

shixianyu@ivreal.com

2024-06-05 17:55

@shixianyu@ivreal.com 解决了,minio的策略要修改为公共访问