Django 静态文件不会加载到已部署的服务器上
Django static files doesn't load on deployed server
我使用最新版本的 django、apache 和 mod_wsgi。我尝试在 Ubuntu 16 上部署项目。与静态文件相关的问题。它们没有加载,如下图所示 (figure there)。
实际上,也许我只是看不出我在哪里犯了错误,因为我在 google 和 Whosebug.
中尝试了大多数东西
.conf 文件中的代码:
Alias /media/ /var/www/fpbg/media
Alias /static/ /var/www/fpbg/static
<Directory /var/www/fpbg/media>
Require all granted
</Directory>
<Directory /var/www/fpbg/static> # also I tried staticfiles
Require all granted
</Directory>
settings.py中的代码:
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
# '/var/www/static/',
]
我执行了manage.py collectstatic,看起来,我什么都做了,但还是不行...救命!
子路径中不应有尾部斜线。而不是:
Alias /media/ /var/www/fpbg/media
Alias /static/ /var/www/fpbg/static
使用:
Alias /media /var/www/fpbg/media
Alias /static /var/www/fpbg/static
通过使用你所拥有的,用于:
/static/foo.txt
它将尝试查找:
/var/www/fpbg/staticfoo.txt
并且会失败。
以上假定您有 STATIC_ROOT
匹配并且还有 运行 collectstatic
。
我使用最新版本的 django、apache 和 mod_wsgi。我尝试在 Ubuntu 16 上部署项目。与静态文件相关的问题。它们没有加载,如下图所示 (figure there)。 实际上,也许我只是看不出我在哪里犯了错误,因为我在 google 和 Whosebug.
中尝试了大多数东西.conf 文件中的代码:
Alias /media/ /var/www/fpbg/media
Alias /static/ /var/www/fpbg/static
<Directory /var/www/fpbg/media>
Require all granted
</Directory>
<Directory /var/www/fpbg/static> # also I tried staticfiles
Require all granted
</Directory>
settings.py中的代码:
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
# '/var/www/static/',
]
我执行了manage.py collectstatic,看起来,我什么都做了,但还是不行...救命!
子路径中不应有尾部斜线。而不是:
Alias /media/ /var/www/fpbg/media
Alias /static/ /var/www/fpbg/static
使用:
Alias /media /var/www/fpbg/media
Alias /static /var/www/fpbg/static
通过使用你所拥有的,用于:
/static/foo.txt
它将尝试查找:
/var/www/fpbg/staticfoo.txt
并且会失败。
以上假定您有 STATIC_ROOT
匹配并且还有 运行 collectstatic
。