Heroku产品上未提供Django静态文件

Heroku产品上未提供Django静态文件,django,heroku,Django,Heroku,我在Heroku部署了一个django网站。当我切换出调试模式时,没有任何静态或媒体文件正在加载。我有一个包含图像的媒体文件夹,并成功运行了collectstatic,还有一个包含许多文件的静态文件夹。以下是相关代码: # settings.py PROJECT_ROOT = dirname(dirname(abspath(__file__))) MEDIA_URL = '/media/' MEDIA_DIR = 'media' MEDIA_ROOT = join(PROJECT_ROOT,

我在Heroku部署了一个django网站。当我切换出调试模式时,没有任何静态或媒体文件正在加载。我有一个包含图像的媒体文件夹,并成功运行了collectstatic,还有一个包含许多文件的静态文件夹。以下是相关代码:

# settings.py
PROJECT_ROOT = dirname(dirname(abspath(__file__)))

MEDIA_URL = '/media/'
MEDIA_DIR = 'media'
MEDIA_ROOT = join(PROJECT_ROOT, MEDIA_DIR)

STATIC_URL = '/static/'
STATIC_DIR = 'static'
STATIC_ROOT = join(PROJECT_ROOT, STATIC_DIR)

# wsgi.py
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "sitemoz.settings")

from django.core.wsgi import get_wsgi_application
from whitenoise.django import DjangoWhiteNoise
application = get_wsgi_application()
application = DjangoWhiteNoise(application)

您必须更改静态根文件夹,这样安装程序才能正常工作。原因是您不能在同一文件夹中使用
静态文件夹
静态根目录

您的
项目根目录是什么?
是项目根目录=dirname(dirname(abspath(file)))好的,您的静态文件和媒体文件都在您的项目包文件夹中。。。您是否尝试过使用
PROJECT\u ROOT=os.path.dirname(os.path.abspath(\uu file\uu))
?两个静态文件夹(静态和媒体)位于项目的根目录中。我刚刚试着切换项目的根目录,它给出了相同的错误。没有办法
dirname(dirname(abspath(文件)))
解析
myproject
where settings.py和其他文件?