• Nginx 单个端口代理Minio


    背景

    最近使用某运营商的云服务器作为正式环境服务器,申请的时候只申请了一个端口,我们的前端页面及后台服务,还有minio,都需要nginx代理这个端口去进行访问。

    1. server {
    2. # 监听端口7878
    3. listen 7878;
    4. server_name localhost;
    5. # 前端页面
    6. location / {
    7. root /home/zx/mima/dist;
    8. index index.html index.htm;
    9. }
    10. # 后端接口地址
    11. location /api {
    12. proxy_pass http://10.10.40.3:8808;
    13. add_header Access-Control-Allow-Origin *;
    14. add_header Access-Control-Allow-Methods 'GET,POST,PUT,DELETE,OPTIONS';
    15. add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
    16. }
    17. # Minio的前端页面
    18. location /minio-web/ {
    19. proxy_pass http://10.10.10.226:9090/;
    20. proxy_http_version 1.1;
    21. proxy_set_header Upgrade $http_upgrade;
    22. proxy_set_header Connection "upgrade";
    23. proxy_set_header Host $host;
    24. proxy_set_header X-Real-IP $remote_addr;
    25. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    26. proxy_set_header X-Forwarded-Proto $scheme;
    27. proxy_connect_timeout 5s;
    28. proxy_read_timeout 60s;
    29. proxy_send_timeout 60s;
    30. # 使用sub_filter修改Minio前端页面内部的地址,添加/minio-web前缀
    31. sub_filter '="/' '="/minio-web/';
    32. sub_filter_once off;
    33. # 配置Minio的前端页面代理,静态资源等
    34. location ~ ^/minio-web/(.*) {
    35. proxy_pass http://10.10.10.226:9090/$1;
    36. proxy_http_version 1.1;
    37. proxy_set_header Upgrade $http_upgrade;
    38. proxy_set_header Connection "upgrade";
    39. proxy_set_header Host $host;
    40. proxy_set_header X-Real-IP $remote_addr;
    41. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    42. proxy_read_timeout 86400;
    43. proxy_pass_header X-XSRF-TOKEN;
    44. proxy_set_header Origin "";
    45. }
    46. }
    47. }

    一开始我单独使用上面的配置,minio的页面,包括静态资源文件,及接口都没有问题,但是在预览和下载文件的时候总是报参数是必须的,好像参数没传过去,后来我加上了下面的配置,算是没有问题了

    1. location /minio-web/api/ {
    2. proxy_pass http://10.10.10.226:9090/api/;
    3. proxy_http_version 1.1;
    4. proxy_set_header Upgrade $http_upgrade;
    5. proxy_set_header Connection "upgrade";
    6. proxy_set_header Host $host;
    7. proxy_set_header X-Real-IP $remote_addr;
    8. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    9. proxy_set_header X-Forwarded-Proto $scheme;
    10. proxy_connect_timeout 5s;
    11. }

  • 相关阅读:
    关于ROS的网络通讯方式TCP/UDP
    Nvidia GPU 入门教程之 01 Ubuntu如何开启SSH,查看存储情况,查看A100 GPU显卡情况
    JavaScript管理HTMLDOM元素(增删改查)
    服务器可靠性稳定性调优指引
    Java编程:实现控制台输入一个整数n,输出如下图形。(三角形)
    JSP 人力资源管理系统myeclipse开发mysql数据库BS模式java编程网页设计
    WordPress v6.0.2 开源强大的博客网站程序
    年中盘点 | 2022年,PaaS 再升级
    iView复合型输入框动态生成表达式
    结构体定义 typedef struct 用法详解和用法小结
  • 原文地址:https://blog.csdn.net/z_xiaoluan/article/details/134312851