Điểm:0

Django Vue.js Nginx POST yêu cầu ERROR 502 (Cổng xấu), khi sử dụng API DRF

lá cờ in

Tôi đã triển khai Vue.js và Django Thương mại điện tử trên VPS, nơi tôi thiết lập Nginx và Gunicorn. Tất cả các trang đều hoạt động tốt, tất cả các trang từ Vue.js và khu vực Quản trị của Django. Nhưng khi sử dụng các biểu mẫu và về cơ bản làm bất cứ điều gì liên quan đến /api/v1/ thì nó báo LỖI 502. Điều gì có thể sai? Tôi không biết làm thế nào để giải quyết vấn đề đó và tôi đã gặp lỗi này trong hơn một vài ngày. Hy vọng bạn có thể giúp đỡ. Cảm ơn bạn!

Đây là Nginx của tôi:

ngược dòng perulab_app_server {
    máy chủ unix:/webapps/perulab/venv/run/gunicorn.sock fail_timeout=0;
}

người phục vụ {
    nghe 8000;
    nghe [::]:8000;
    tên_máy chủ 172.16.7.52;

    client_max_body_size 40M;


    địa điểm / {
        gốc /webapps/perulab/web-frontend/dist;
        try_files $uri /index.html;
    }


    vị trí /tĩnh/ {
        gốc /webapps/perulab/web-backend;
    }

    địa điểm /phương tiện/ {
        gốc /webapps/perulab/web-backend;
    }

    vị trí /api/ {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-NginX-Proxy true;
        proxy_pass http://perulab_app_server/api/;
        tắt proxy_ssl_session_reuse;
        proxy_set_header Máy chủ $http_host;
        proxy_redirect tắt;
    }

    vị trí /quản trị viên/ {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-NginX-Proxy true;
        proxy_pass http://perulab_app_server/admin/;
        tắt proxy_ssl_session_reuse;
        proxy_set_header Máy chủ $http_host;
        proxy_redirect tắt;
    }



}
Michael Hampton avatar
lá cờ cz
Phần mềm nào gửi lỗi 502?
Ivan Stepanchuk avatar
lá cờ in
Trong bảng điều khiển Chrome, khi Axios đang cố truy cập DRF api để gửi email liên hệ chẳng hạn hoặc bất kỳ biểu mẫu nào khác. Nhưng nó hiển thị các sản phẩm, đó là lạ. @MichaelHampton
Ivan Stepanchuk avatar
lá cờ in
Tôi không muốn sử dụng tên miền phụ, tôi muốn làm cho chúng sử dụng cùng một cổng. Khi chạy "gunicorn --bind 172.16.7.52:8000 core.wsgi", nó báo kết nối đang được sử dụng. @MichaelHampton
Michael Hampton avatar
lá cờ cz
Bạn có nghĩa là ứng dụng của bạn đã gửi lỗi 502? Điều đó có vẻ khá kỳ quặc.
Ivan Stepanchuk avatar
lá cờ in
Có, trang vẫn giữ nguyên nhưng bảng điều khiển trả về POST http://172.16.7.52:8000/api/v1/contacto/ 502 (Cổng xấu).
Michael Hampton avatar
lá cờ cz
Nhìn vào nội dung phản hồi từ yêu cầu đó.
Ivan Stepanchuk avatar
lá cờ in
AssertionError tại /api/v1/contacto/ Dự kiến ​​sẽ trả về `Response`, `HttpResponse` hoặc `HttpStreamingResponse` từ chế độ xem, nhưng đã nhận được ``, điều này thật kỳ lạ, bởi vì khi ở trên máy cục bộ, nó vẫn gửi tốt.
Ivan Stepanchuk avatar
lá cờ in
@MichaelHampton Có vẻ như một số API hoạt động và tất cả chúng hoạt động đều có một điểm chung - chúng không gửi email. Tất cả các API còn lại như liên hệ hoặc Thay đổi mật khẩu chẳng hạn gửi email sẽ tạo ra Lỗi 502 này. Vẫn không biết cách giải quyết vấn đề đó.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.