使用Digital Ocean部署Django项目时返回404错误的所有静态文件

093gszye  于 2022-12-24  发布在  Go
关注(0)|答案(2)|浏览(108)

我已经在开发中测试了我的应用程序,并成功地让它在本地服务器上运行,在开发中完全正常。我现在一直在尝试将它推向生产,但没有提供任何静态文件。连接已成功,因为域仅使用纯HTML显示应用程序。但是,所有静态文件都返回相同的404错误。
settings.py

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))`
STATIC_URL = "static/"
STATIC_ROOT = os.path.join(BASE_DIR, 'static')

编辑:安装白噪声修复了这个问题!

vuktfyat

vuktfyat1#

试试这个:

    • 网址. py**
from django.conf.urls.static import static

urlpatterns = [
    ...
    ...

] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) + \
              static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
    • 设置. py**
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')

或者尝试以下命令:

  • python manage.py collectstatic*
jk9hmnmh

jk9hmnmh2#

尝试在每个HTML文件顶部,如果你没有:

{% load static %}

这是因为当你添加一些静态文件时,你必须手动告诉模板加载这些静态文件。
更多信息,请参见here

相关问题