2012-12-15 538 views
0

我在將我的Django站點從dev服務器移植到Heroku時出現了一個奇怪的問題。我知道我不應該使用django來直接提供靜態文件,但我現在只是測試一個想法。在Heroku上提供Django靜態文件

我已經嘗試使用:

from django.contrib.staticfiles.urls import staticfiles_urlpatterns 
    urlpatterns += staticfiles_urlpatterns() 

還有:

from django.conf import settings 
    urlpatterns += patterns(
     (r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.STATIC_ROOT}),) 

但無論是解決方案,我我的.css文件得到服務得很好,但我的PNG圖片文件沒有。這些文件在Django和Heroku如何處理它們方面有什麼不同?

+0

爲什麼不把django-storages集成到s3上? – Ted

+0

你嘗試過heroku運行python manage.py collectstatic嗎?什麼是settings.DEBUG設置在你的heroku實例中? – Ted

+0

如果你能得到css文件,你應該也可以得到.png!可能是上/下文件名稱的問題?另外,打開heroku日誌並驗證路徑。最後,將您的文件移至S3。從keroku dyno提供靜態文件非常昂貴(或非常慢)。 – danihp

回答

0

這是大小寫問題。事實證明,這個文件名比HTML文件中的參考文件有更多的上限字母......當我從Mac OS移動到區分大小寫的Unix時,總是一個問題。