Cấu hình nginx hiện có dưới đây. Tôi đã thử nhiều cách nhưng không có gì hiệu quả.
người phục vụ {
server_name backend.xxxxxx.com www.backend.xxxxxx.com;
client_max_body_size 100M;
#add_header Kiểm soát truy cập-Cho phép-Xuất xứ *;
#add_header 'Kiểm soát truy cập-Cho phép-Xuất xứ' '*' luôn luôn;
địa điểm / {
#add_header 'Kiểm soát truy cập-Cho phép-Xuất xứ' '*' luôn luôn;
bao gồm proxy_params;
proxy_pass http://unix:/var/log/gunicorn/xxxxxx.sock;
# Yêu cầu đơn giản
#if ($request_method ~* "(GET|POST)") {
#add_header "Kiểm soát truy cập-Cho phép-Xuất xứ" *;
#}
# Yêu cầu được duyệt trước
#if ($request_method = TÙY CHỌN) {
# add_header "Kiểm soát truy cập-Cho phép-Xuất xứ" *;
# add_header "Phương pháp kiểm soát truy cập-cho phép" "NHẬN, ĐĂNG, TÙY CHỌN, HEAD";
# add_header "Kiểm soát truy cập-Cho phép-Tiêu đề" "Ủy quyền, Xuất xứ, X-Yêu cầu-Với, Loại nội dung, Chấp nhận";
# trả về 200;
#}
}
nghe 443 ssl; # được quản lý bởi Certbot
ssl_certificate /etc/letsencrypt/live/backend.xxxxxx.com/fullchain.pem; # được quản lý bởi Certbot
ssl_certificate_key /etc/letsencrypt/live/backend.xxxxxx.com/privkey.pem; # được quản lý bởi Certbot
bao gồm /etc/letsencrypt/options-ssl-nginx.conf; # được quản lý bởi Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # được quản lý bởi Certbot
}
người phục vụ {
nếu ($host = backend.xxxxxx.com) {
trả lại 301 https://$host$request_uri;
} # được quản lý bởi Certbot
nghe 80;
server_name backend.xxxxxx.com www.backend.xxxxxx.com;
client_max_body_size 100M;
trả lại 404; # được quản lý bởi Certbot
}
Trong Django tôi đã thêm tiêu đề django-cors
plugin với tất cả cấu hình. Cần đề nghị chuyên gia của bạn.