uWSGI应用程序处理HTTPS请求

我正在使用Django编写RESTful应用程序,并使用以下conf在uwsgi中运行它:

...
socket = 127.0.0.1:8001
...

我正在使用带有以下conf的Nginx

# listen on 80 and 443
server {
    root /var/www/html;
    index index.html;
    server_name ...;

    location / {
        try_files $uri /index.html;
    }

    listen [::]:443 ssl ipv6only=on; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate ...;
    ssl_certificate_key ...
    include ...
    ssl_dhparam ...
}

server {
    listen 8000;
    server_name ...;
    location / {
        uwsgi_pass 127.0.0.1:8001;
        include uwsgi_params;
    }
}

server {
    if ($host = ...) {
        return 301 https://$host$request_uri;
    } # managed by Certbot

    listen 80 default_server;
    listen [::]:80 default_server;

    server_name ...;
    return 404; # managed by Certbot
}

端口80/443上的Nginx正在处理一个前端项目,该项目将向https://[site.url]:8000/发出请求,然后浏览器将抛出诸如ERR_SSL_PROTOCOL_ERROR之类的错误。

如果我尝试直接访问https://[site.url]:8000,则浏览器会告诉我

  

“此网站无法提供安全的连接   [site]发送了无效的回复。   ERR_SSL_PROTOCOL_ERROR“

RESTful服务在GET http://[site]:8000/xxx/之类的HTTP请求上可以正常工作。但是我不能在前端使用HTTP请求,因为它由于不安全而被浏览器阻止。 如何使RESTful服务通过HTTPS连接正常工作?

zhaofc 回答:uWSGI应用程序处理HTTPS请求

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3162768.html

大家都在问