我正在使用Gunicorn + Flask + Python开发一款Heroku应用程序,并且我希望能够与工头在本地运行它。它工作正常,但是当我切换到我的网站使用SSL时,它不再能够找到/静态下的javascript文件。我怎样才能使这些在HTTPS下可用?如何通过https为Gunicorn + Flask提供静态文件?
1
A
回答
0
你可以使用nginx的前端gunicorn?如果是这样,那么你可以通过添加一个位置块像下面的nginx.conf服务一样通过SSL的JavaScript静态内容:
server {
listen 443 ssl;
# other normal ssl stuff you seem to already have working
location/{
root /path/to/your/static/stuff;
try_files $uri /index.html; # this will match your static content
}
location /api {
# your normal proxy stuff to gunicorn
}
}
而且分开,你可以提供静态内容从API分离通过HTTP的效率,像如下:
server { listen 80; location/{ try_files $uri /index.html; } }
server {
listen 443 ssl;
# other normal ssl stuff you seem to already have working
location /api {
# your normal proxy stuff to gunicorn
}
}
0
最简单的方法是使用肯尼斯·赖茨的Flask-SSLify库。
相关问题
- 1. 如何通过HTTPS提供Django静态文件?
- 2. gunicorn不提供静态文件
- 3. django:通过nginx提供静态文件
- 4. 确认Nginx正在提供静态文件而不是Flask
- 5. Flask:如何从模板目录下提供静态文件?
- 6. Flask:如何从模板目录提供静态文件?
- 7. 如何在Flask中提供静态文件
- 8. Django提供静态文件
- 9. 如何提供静态文件动态?
- 10. 如何通过Rack提供静态文件?
- 11. 如何在windows中通过nginx和django提供静态文件
- 12. 提供静态文件nginx的+ Gunicorn + Django的
- 13. JS文件不通过HTTPS提供
- 14. Flask提供静态html页面
- 15. 使用Flask,我如何将robots.txt和sitemap.xml作为静态文件提供?
- 16. 通过https在Azure上提供静态JS,CSS等文件的最佳方式
- 17. NGINX提供静态文件
- 18. asp.net,如何提供静态文件
- 19. 如何提供静态文件? (css)
- 20. 通过静态文件提供动态内容
- 21. Django,提供静态文件
- 22. Sinatra提供静态文件
- 23. Nginx没有提供Django静态文件
- 24. 如何使用ssh通过提供静态文本
- 25. NGINX为Django App提供静态文件
- 26. Django未提供静态文件
- 27. 通过flatironjs提供静态资产
- 28. Apache不会提供Django静态文件
- 29. 允许IIS 7.5通过ASP.NET管道提供静态文件
- 30. 通过HTTP提供静态文件一起去
就这样 - 在同一页面上同时提供静态内容和安全内容将导致大多数浏览器显示某种安全警告。理想情况下,一切都应该在SSL下发生 - 静态内容或其他。 –