You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

客户端调用API时HTTP与HTTPS请求均返回302重定向的问题排查求助

客户端调用API时HTTP与HTTPS请求均返回302重定向的问题排查求助

大家好,我最近碰到个头疼的问题:不管用HTTP还是HTTPS调用我们的API接口(比如https://app.ardracloud.com/api/deviceconnect或者http://app.ardracloud.com/api/deviceconnect),服务器都会返回302重定向,导致客户端没法正常获取API数据。

我把当前的Nginx配置贴在下面,麻烦帮忙看看哪里可能出了问题:

server {
    listen 66.66.66.66:443 ssl;
    listen 443;
    listen [::]:443;

    server_name app.ardracloud.com;
    server_name www.app.ardracloud.com;
    server_name ipv4.app.ardracloud.com;

    ssl_certificate             /opt/psa/var/certificates/******;
    ssl_certificate_key         /opt/psa/var/certificates/******;

    client_max_body_size 134217728;

    access_log "/var/www/vhosts/system/app.ardracloud.com/logs/proxy_access_ssl_log";
    error_log "/var/www/vhosts/system/app.ardracloud.com/logs/proxy_error_log";

    root "/var/www/vhosts/ardracloud.com/app.ardracloud.com/public";

    #Error Handling
    error_page 497 https://$host:$server_port$request_uri;
    error_page 400 https://app.ardracloud.com:443$request_uri;

    location ^~ /.well-known/acme-challenge/ {
        root /var/www/vhosts/default/htdocs;
        types { }
        default_type text/plain;
        satisfy any;
        auth_basic off;
        allow all;

        location ~ ^/\.well-known/acme-challenge.*/\. {
            deny all;
        }
    }
    #extension letsencrypt end

    location / {
        proxy_read_timeout 1200s;
        proxy_pass https://127.0.0.1:7081/;
        #proxy_hide_header upgrade;
        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 X-Accel-Internal /internal-nginx-static-location;
        access_log off;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_http_version 1.1; 
        proxy_redirect http://127.0.0.1:7081/ https://app.ardracloud.com/;
    }

    location ^~ /internal-nginx-static-location/ {
        alias /var/www/vhosts/ardracloud.com/app.ardracloud.com/public/;
        internal;
    }

    location ~ ^/(plesk-stat|awstats-icon|webstat|webstat-ssl|ftpstat|anon_ftpstat) {
        proxy_pass https://127.0.0.1:7081;
        proxy_hide_header upgrade;
        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 X-Accel-Internal /internal-nginx-static-location;
        access_log off;
    }

    disable_symlinks if_not_owner "from=/var/www/vhosts/ardracloud.com";

    add_header X-Powered-By PleskLin;
}

map $upstream_http_location $redirect_uri {
    "~https://[^/]+/(?<location_uri>.*)$" "$location_uri";
}

upstream origin {
    server app.ardracloud.com;
}

server {
    listen 66.66.66.66:80;

    server_name app.ardracloud.com;
    server_name www.app.ardracloud.com;
    server_name ipv4.app.ardracloud.com;

    client_max_body_size 134217728;

    access_log "/var/www/vhosts/system/app.ardracloud.com/logs/proxy_access_log";
    error_log "/var/www/vhosts/system/app.ardracloud.com/logs/proxy_error_log";

    location / {
        return 301 https://$host$request_uri;
    }

    location /api {
        return 301 https://$host$request_uri;
    }
}

另外,我用curl -I测试了请求,得到的响应如下:

HTTP/1.1 301 Moved Permanently
Server: nginx
Date: Sun, 18 Feb 2024 10:39:57 GMT
Content-Type: text/html
Content-Length: 162
Connection: keep-alive
Location: https://app.ardracloud.com/

再次测试的响应也是完全一样的:

HTTP/1.1 301 Moved Permanently
Server: nginx
Date: Sun, 18 Feb 2024 10:39:57 GMT
Content-Type: text/html
Content-Length: 162
Connection: keep-alive
Location: https://app.ardracloud.com/

希望有经验的朋友能帮我分析下,到底是Nginx配置哪里出了问题,还是后端服务的重定向设置导致的?非常感谢!

备注:内容来源于stack exchange,提问作者Online Works

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 07:44:50