2014-09-29 199 views
0

所以我已經看到很多關於Apache沒有提供Django管理靜態文件的服務,但由於某些原因,Apache沒有提供任何靜態文件。它理解並找到模板,但沒有加載圖像,CSS或JavaScript。Apache不會提供Django靜態文件

編輯2:更新了兩個文件,以顯示新的設置

編輯:我添加了STATIC_ROOT和我能夠collectstatic文件,但它仍然沒有重新啓動服務器後,爲他們服務。

我試過./manage.py collectstatic和得到這個錯誤:

ImproperlyConfigured("You're using the staticfiles app " 
django.core.exceptions.ImproperlyConfigured: You're using the staticfiles app without 
having set the STATIC_ROOT setting to a filesystem path. 

我的settings.py文件是在這裏:

https://github.com/rchurch4/stackquestions/blob/master/settings.py

我nxt4.com.conf文件在這裏:

https://github.com/rchurch4/stackquestions/blob/master/nxt4.com.conf

如果有人可以請讓我知道如何配置這個,這樣Apache將服務Django的靜態文件,這將是偉大的。我在AWS上運行一個帶有MySQL數據庫的Ubuntu。文件路徑到服務器上的網站是:/home/ubuntu/nxt4.com/nxt4/提前

感謝

+0

你說你已經添加了'STATIC_ROOT' - 你還沒有添加它到你鏈接的'settings.py'。另外,顯示您的_actual_設置? – 2014-09-30 07:44:34

+0

你是什麼意思的實際設置?對於Web服務器來說是全新的東西,所以越具體越好。如果通過實際設置,您的意思是/etc/apache2/sites-enabled/nxt4.com.conf,那麼在我輸入此評論時它會處於最新編輯狀態...... – 2014-10-01 03:26:38

回答

1

錯誤信息似乎很清楚:你有沒有設置STATIC_ROOT設置,因此collectstatic做不知道把收集的文件放在哪裏。從你的httpd.conf的外觀看來,它應該設置爲「/home/ubuntu/nxt4.com/static/」

+0

檢查https://docs.djangoproject .com/en/dev/howto/static-files/#deployment – 2014-09-29 20:55:51

+0

我能夠在根目錄中收集靜態文件,但它仍然無法爲它們提供服務 – 2014-09-29 21:19:02