2012-07-18 53 views
0

我在通過我的Web服務器提供服務靜態文件運行mod_wsgi的和Django的麻煩。我們的服務器提供商是Heroku。服務上的mod_wsgi和Django的(服務器:Heroku的)的頂部的靜態文件

由於這些文件是靜態的,不應該進行評估,我聽說他們應該被直接投放,而不是通過mod_wsgi的打算,而不是和Django的不應該接觸呢?

我覺得這應該是一件簡單的事情,但我與它掙扎。我真的很感激,如果任何人都可以指出我正確的方向,我應該如何嘗試存儲和提供靜態文件?

+1

我對這個問題很感興趣。但是,我擔心解決方案是將靜態文件存儲在亞馬遜S3(或其他提供商)和其他靜態存儲中。請記住,django提供了'STATIC_URL'參數。你是否將php從shashdetail.com/移至django? ;) – danihp 2012-07-18 15:38:08

+0

@danihp - 我考慮過S3,我在想可能有一個更簡單的解決方案,但也許不是?這是用於Web應用程序,而不是Sharp Detail網站。我認爲Heroku可能會矯枉過正:)感謝您的幫助! – 2012-07-18 15:45:53

+1

我用webfaction,和靜態文件的處理方式是創建一個'防靜電only'應用程序,它指向'www.mydomain.com/static_files'。我也把'static_files'作爲我的django'STATIC_URL'。現在配置nginx(或任何其他服務器進程)來爲這個「靜態」應用程序提供服務。 – zaphod 2012-07-18 15:52:20

回答

1

的想法是使用Web服務器來處理靜態文件的請求,而不是通過你的Django實例傳遞的。原因是Web服務器與Django應用程序不同,它們針對靜態內容進行了優化。

你真正需要做的是配置你的Web服務器來處理通過設置文檔根這些請求的位置匹配您的STATIC_URLMEDIA_URL的路徑請求在您的靜態和媒體文件被存儲的唯一的事你應用。

+0

我認爲OP在談論如何在heroku環境下靜態提供文件。 – danihp 2012-07-18 16:03:43

+0

@danihp - 對,對不起。我的問題應該更加明確。我編輯了這個帖子來反映這一點。 – 2012-07-18 16:05:11

+0

情景在身體問題中解釋,我也爲快速拍攝人添加了heroku標記;) – danihp 2012-07-18 16:07:35