大佬救命!部署代理的问题!

客户端服务端(端口不同)是在同一台服务器上的
服务端能正常访问
部署代理的问题

客户端项目报404
部署代理的问题

我nginx代理了,但还是没解决,是不是配置的有问题?我是想路径碰到/api/就替换成/同时代理到47.94.250.51:8000

大佬救命!部署代理的问题!

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

哦哦,我知道了,是我配置反了,应该配置再客户端项目才对!

1周前 评论
Coolr 1周前
PHP大佬 (作者) (楼主) 1周前
讨论数量: 19

客户端请求用get

1周前 评论
PHP大佬 (楼主) 1周前
deatil (作者) 1周前
deatil (作者) 1周前
PHP大佬 (楼主) 1周前
PHP大佬 (楼主) 1周前
  • 可以试试
    ### 代理服务器
    upstream hyperf_work {
            # 执行代理访问真实服务器   
           server 10.28.146.120:9501;
    }

转发到 缓存无服务

location ~* /api/v1/ {
                ######## 跨越处理
                add_header Content-Type 'application/json; charset-utf-8';
                add_header Access-Control-Allow-Credentials 'true';
                add_header Access-Control-Allow-Headers 'Origin, No-Cache, X-Requested-With, If-Modified-Since, Pragma, Last-Modified, Cache-Control, Expires, Content-Type, X-E4M-With, Authorization, Version, Device-Type, Application-Type, Payload, Signature, AppId, AppType,Content-Disposition,Cache-Control';
                add_header Access-Control-Allow-Origin '*';
                add_header Access-Control-Allow-Methods 'GET, POST, PUT, DELETE, OPTIONS';
                add_header Access-Control-Max-Age '86400';
                if ($request_method = 'OPTIONS') {
                         return 204;
               }
                 proxy_set_header Host $http_host;
                 proxy_set_header Host $host;
                 proxy_set_header X-Real-IP $remote_addr;
                 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                 proxy_set_header    HTTP_X_FORWARDED_FOR $remote_addr;
                 proxy_connect_timeout   10;
                 proxy_buffering off;
                 chunked_transfer_encoding off;
                 proxy_cache off;
                 proxy_send_timeout      30m;
                 proxy_read_timeout      30m;
                 client_max_body_size    100m;
                 # 转发Cookie,设置 SameSite
                 proxy_cookie_path / "/; secure; HttpOnly; SameSite=strict";
                 proxy_pass http://hyperf_work;
         }
1周前 评论
PHP大佬 (楼主) 1周前

@Coolr 还是不行,是不是我配的有问题?

### 代理服务器
upstream cw_work {
    # 执行代理访问真实服务器   
    server 47.94.250.51:8000;
}

server
{
    listen 8000;
    server_name 47.94.250.51_8000;
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/wwwroot/cover-wechat-backend/public;
    #CERT-APPLY-CHECK--START
    # 用于SSL证书申请时的文件验证相关配置 -- 请勿删除
    include /www/server/panel/vhost/nginx/well-known/47.94.250.51_8000.conf;
    #CERT-APPLY-CHECK--END

    #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
    #error_page 404/404.html;
    #SSL-END

    #ERROR-PAGE-START  错误页配置,可以注释、删除或修改
    error_page 404 /404.html;
    #error_page 502 /502.html;
    #ERROR-PAGE-END

    #PHP-INFO-START  PHP引用配置,可以注释或修改
    include enable-php-81.conf;
    #PHP-INFO-END

    #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
    include /www/server/panel/vhost/rewrite/47.94.250.51_8000.conf;
    #REWRITE-END

    location ~* /api/ {
      ######## 跨越处理
      add_header Content-Type 'application/json; charset-utf-8';
      add_header Access-Control-Allow-Credentials 'true';
      add_header Access-Control-Allow-Headers 'Origin, No-Cache, X-Requested-With, If-Modified-Since, Pragma, Last-Modified, Cache-Control, Expires, Content-Type, X-E4M-With, Authorization, Version, Device-Type, Application-Type, Payload, Signature, AppId, AppType,Content-Disposition,Cache-Control';
      add_header Access-Control-Allow-Origin '*';
      add_header Access-Control-Allow-Methods 'GET, POST, PUT, DELETE, OPTIONS';
      add_header Access-Control-Max-Age '86400';
      if ($request_method = 'OPTIONS') {
               return 204;
      }
       proxy_set_header Host $http_host;
       proxy_set_header Host $host;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
       proxy_set_header    HTTP_X_FORWARDED_FOR $remote_addr;
       proxy_connect_timeout   10;
       proxy_buffering off;
       chunked_transfer_encoding off;
       proxy_cache off;
       proxy_send_timeout      30m;
       proxy_read_timeout      30m;
       client_max_body_size    100m;
       # 转发Cookie,设置 SameSite
       proxy_cookie_path / "/; secure; HttpOnly; SameSite=strict";
       proxy_pass http://cw_work;
    }

    #禁止访问的文件或目录
    location ~ ^/(\.user.ini|\.htaccess|\.git|\.env|\.svn|\.project|LICENSE|README.md)
    {
        return 404;
    }

    #一键申请SSL证书验证目录相关设置
    location ~ \.well-known{
        allow all;
    }

    #禁止在证书验证目录放入敏感文件
    if ( $uri ~ "^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$" ) {
        return 403;
    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires      30d;
        error_log /dev/null;
        access_log /dev/null;
    }

    location ~ .*\.(js|css)?$
    {
        expires      12h;
        error_log /dev/null;
        access_log /dev/null;
    }

    access_log  /www/wwwlogs/47.94.250.51_8000.log;
    error_log  /www/wwwlogs/47.94.250.51_8000.error.log;
}
1周前 评论
Coolr 1周前
PHP大佬 (作者) (楼主) 1周前

这是web的,上面的是api的@

server
{
    listen 5173;
    server_name 47.94.250.51;
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/wwwroot/cover-wechat-front/dist;
    #CERT-APPLY-CHECK--START
    # 用于SSL证书申请时的文件验证相关配置 -- 请勿删除
    include /www/server/panel/vhost/nginx/well-known/47.94.250.51.conf;
    #CERT-APPLY-CHECK--END

    #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
    #error_page 404/404.html;
    #SSL-END

    #ERROR-PAGE-START  错误页配置,可以注释、删除或修改
    error_page 404 /404.html;
    #error_page 502 /502.html;
    #ERROR-PAGE-END

    #PHP-INFO-START  PHP引用配置,可以注释或修改
    include enable-php-81.conf;
    #PHP-INFO-END

    #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
    include /www/server/panel/vhost/rewrite/47.94.250.51.conf;
    #REWRITE-END

    #禁止访问的文件或目录
    location ~ ^/(\.user.ini|\.htaccess|\.git|\.env|\.svn|\.project|LICENSE|README.md)
    {
        return 404;
    }

    #一键申请SSL证书验证目录相关设置
    location ~ \.well-known{
        allow all;
    }

    #禁止在证书验证目录放入敏感文件
    if ( $uri ~ "^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$" ) {
        return 403;
    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires      30d;
        error_log /dev/null;
        access_log /dev/null;
    }

    location ~ .*\.(js|css)?$
    {
        expires      12h;
        error_log /dev/null;
        access_log /dev/null;
    }
    access_log  /www/wwwlogs/47.94.250.51.log;
    error_log  /www/wwwlogs/47.94.250.51.error.log;
}
1周前 评论

把代理 内容 加到 web站点 里面 ,还有(先确定两个站点都能独立访问 ) 你的api站点都不能访问?

1周前 评论
PHP大佬 (楼主) 1周前

哦哦,我知道了,是我配置反了,应该配置再客户端项目才对!

1周前 评论
Coolr 1周前
PHP大佬 (作者) (楼主) 1周前

:grin:想知道有没有挨艹

1周前 评论

中文转码都不喜欢配置编码协议吗 :joy:

1周前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!