Django - 如何安装 WhiteNoise

WhiteNoise

Django 没有内置的静态文件服务解决方案,至少在生产环境中,当 DEBUG 必须设置为 False 时,Django 就没有内置的解决方案。

我们需要使用第三方解决方案来实现这一点。

在本教程中,我们将使用 WhiteNoise,这是一个专为静态文件服务而构建的 Python 库。


安装 WhiteNoise

要将 WhiteNoise 安装到您的虚拟环境中,请键入以下命令:

pip install whitenoise

结果应该类似于这样:

Collecting whitenoise
  Downloading whitenoise-6.9.0-py3-none-any.whl.metadata (3.6 kB)
Downloading whitenoise-6.9.0-py3-none-any.whl (20 kB)
Installing collected packages: whitenoise
Successfully installed whitenoise-6.9.0

[notice] A new release of pip is available: 24.3.1 -> 25.0.1
[notice] To update, run: python.exe -m pip install --upgrade pip

修改设置

要让 Django 知道你想运行 WhitNoise,你需要在 settings.py 文件的 MIDDLEWARE 列表中指定它:

my_tennis_club/my_tennis_club/settings.py:

.
.
MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'whitenoise.middleware.WhiteNoiseMiddleware',
].
.

收集静态文件

在能够提供上一章示例中的静态文件之前,您还需要执行一个操作。 您需要收集所有静态文件并将它们放入一个指定的文件夹中。您将在下一章中学习如何操作。