2012-03-08 38 views
1

我在Windows上安裝了Apache,(是的,不是一個好主意,但不是我的錯)。我打開一個彈出窗口,其中包含大約32張圖像,除3個圖像鏈接外,其他所有圖像都可以使用。這些圖像來自TIF文件,因此必須進行轉換,所以它通過我的Django應用程序運行,以完成所有這些工作。當重試工作時,這3個網站失敗了。從我的DJango應用程序中我的500來自哪裏?

在apache日誌中,我獲得了29 200秒,接着是3 500秒,但未能加載的實際圖像隨機散佈在29張良好的圖像中。當我看日誌,尾-f,500到599沿多秒來200到299後,但加時戳在他們面前,就像這樣:

192.168.20.45 - - [08/Mar/2012:01:24:28 -0600] "GET /viewer/... 200 44277 
192.168.20.45 - - [08/Mar/2012:01:24:28 -0600] "GET /viewer/... 200 52283 
192.168.20.45 - - [08/Mar/2012:01:24:28 -0600] "GET /viewer/... 200 44991 
192.168.20.45 - - [08/Mar/2012:01:24:29 -0600] "GET /viewer/... 200 33077 
192.168.20.45 - - [08/Mar/2012:01:24:22 -0600] "GET /viewer/... 500 16 
192.168.20.45 - - [08/Mar/2012:01:24:22 -0600] "GET /viewer/... 500 16 
192.168.20.45 - - [08/Mar/2012:01:24:22 -0600] "GET /viewer/... 500 16 

DEBUG = False,並且管理員都設置,所以我應該得到一個電子郵件在Django中每發生500次,我都測試了電子郵件,並按預期工作。我要通過的代碼具有錯誤條件的日誌記錄,並且這些都不會觸發。

這幾乎就像Apache或Mod_wsgi知道這些連接進來,但從來沒有將它們傳遞給Django代碼,它們最終只會從看起來是超時的結果中死去。 Chrome的DevTools結束了我展示:

**Response Headers** 
Connection:close 
Content-Type:text/html; charset=utf-8 
Date:Thu, 08 Mar 2012 07:24:22 GMT 
Server:Apache/2.2.21 (Win32) mod_wsgi/3.3 Python/2.7.2 
Set-Cookie:sessionid=d4616w0f850u1eb33q7a6fzf37f840b5; Path=/ 
Transfer-Encoding:chunked 
Vary:Cookie 

我在窗戶和Apache說,這對啓動:

[Thu Mar 08 01:38:09 2012] [warn] mod_wsgi: Compiled for Python/2.7. 
[Thu Mar 08 01:38:09 2012] [warn] mod_wsgi: Runtime using Python/2.7.2. 
[Thu Mar 08 01:38:09 2012] [notice] Apache/2.2.21 (Win32) mod_wsgi/3.3 Python/2.7.2 configured -- resuming normal operations 
[Thu Mar 08 01:38:09 2012] [notice] Server built: Sep 9 2011 10:26:10 
[Thu Mar 08 01:38:09 2012] [notice] Parent: Created child process 3260 
[Thu Mar 08 01:38:09 2012] [warn] mod_wsgi: Compiled for Python/2.7. 
[Thu Mar 08 01:38:09 2012] [warn] mod_wsgi: Runtime using Python/2.7.2. 
[Thu Mar 08 01:38:09 2012] [notice] Child 3260: Child process is running 
[Thu Mar 08 01:38:09 2012] [notice] Child 3260: Acquired the start mutex. 
[Thu Mar 08 01:38:09 2012] [notice] Child 3260: Starting 64 worker threads. 
[Thu Mar 08 01:38:09 2012] [notice] Child 3260: Starting thread to listen on port 80. 

有小於64名的請求,所以應該留下來處理它們的線程。

有關正在發生的任何想法?或如何弄清楚?編輯---- 沒有回溯,就是這個問題。根本沒有跡象表明Python曾經看到過這個請求。

是的,你不應該使用python來提供靜態文件,但你不能從一個多圖像TIFF放入一個單一圖像TIFF到你必須從多圖像文件中拉出來,放在一個格式瀏覽器可以顯示,並且您不希望將1億個以上的TIFF圖像轉換爲單個圖像PNG或JPEG。而這些都不是可以被普通大衆觀看,但僅限於自己的「主人」

加載這第二臺機器,問題不會發生在圖像.....

+0

什麼網址可在Apache日誌500錯誤被列? – 2012-03-08 09:10:48

+0

你不應該通過django來提供靜態文件。你應該總是使用靜態服務。有關信息,請參閱此文件https://docs.djangoproject.com/en/dev/howto/static-files/ – 2012-03-08 09:16:43

+0

追溯哪裏? – 2012-03-08 09:43:41

回答

相關問題