Open twn39 opened 2 years ago
生产环境部署时,django 的 admin 和 静态文件是分开的,通过 nginx 去 serve 静态文件,配置稍显麻烦,通过 WhiteNoise 和 Waitress 可以 serve 完整的 django 应用。
安装:
pip install whitenoise pip install whitenoise[brotli]
在 django 中设置 WhiteNoise:
MIDDLEWARE = [ # 'django.middleware.security.SecurityMiddleware', 'whitenoise.middleware.WhiteNoiseMiddleware', # ... ]
在 settings.py 中加入:
settings.py
STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'
配置 waitress :
from waitress import serve from djangodemo.wsgi import application serve(application, listen='*:8060')
最后执行:
python server.py
即可启动,nginx 只需反向代理 :8060 端口即可,无需配置静态文件目录。
:8060
生产环境部署时,django 的 admin 和 静态文件是分开的,通过 nginx 去 serve 静态文件,配置稍显麻烦,通过 WhiteNoise 和 Waitress 可以 serve 完整的 django 应用。
安装:
在 django 中设置 WhiteNoise:
在
settings.py
中加入:配置 waitress :
最后执行:
即可启动,nginx 只需反向代理
:8060
端口即可,无需配置静态文件目录。