私のアプリケーションでは、Flask-Socketio、Flask、および nginx を使用しています。HTTP から HTTPS へのすべての処理は、アプリケーション サーバー レベルではなく Web サーバー レベルで行う必要があるという投稿を読みました。この属性を使用して、rewrite
すべての HTTP リクエストを HTTPS リクエストとしてリダイレクトしました。これは、静的ページで正常に機能します。ただし、動的コンテンツを読み込もうとすると、エラーが発生しThe page at 'https://localhost/myLoc' was loaded over HTTPS, but displayed insecure content from 'http://localhost/myLoc/more/paths?t=1390397': this content should also be loaded over HTTPS.
ます。
さらに、このエラーも発生しますXMLHttpRequest cannot load http://localhost/myLoc/more/paths?t=1390397. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://localhost' is therefore not allowed access.
私のnginx.confファイルは次のようになります
server {
server {
listen 80;
server_name _;
rewrite ^ https://$host$request_uri? permanent;
}
server {
gzip on;
ssl on;
listen 443 ssl;
server_name *.mydomain.com;
ssl_certificate /path/to/nginx/ssl/nginx.crt;
ssl_certificate_key /path/to/nginx/ssl/nginx.key;
location /myLoc {
proxy_pass http://localhost:9001/myLoc;
proxy_redirect off;
proxy_buffering off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
助けてください。Flask-SocketIO には、証明書とキーへのパスも含める必要がありますか?