我正在使用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下發生 - 靜態內容或其他。 –