我的Django應用程序停止在Apache(與mod_wsgi的)部署工作時。 它在Windows服務器上運行。在Windows應用程序調用可執行文件,稱爲其上的另一個遠程的Windows中執行命令「雷克斯」(鍊金術遠程執行程序)。Django應用程序停止在Apache部署工作時(子運行,但失敗)
process = subprocess.Popen(['rex',ip,usr,pwd,command], stdout=subprocess.PIPE, universal_newlines=True)
out, err = process.communicate()
這一切在開發中都可以正常工作,但是當使用mod_wsgi在Apache上部署時,它不起作用!在「雷克斯」的程序仍然運行,但是它不能做的事情,並給出了以下消息:
Failed to execute the program: A specified logon session does not exist. It may already have been terminated.
因此,「雷克斯」的程序正在運行,但它是不能夠進行必要的連接或它是從Apache產生的。它看起來像Apache在完成之前以某種方式關閉「rex.exe」所做的連接!
任何想法?
謝謝您的回答,但我不認爲這是有關權限。 Apache服務以「系統用戶帳戶」或其他方式運行(如何以該用戶身份登錄?)。我曾嘗試在自己的帳戶下運行Apache,並得到了相同的結果。我認爲這與網絡連接有關 - 從Apache產生的進程無法保持連接的開放。這些流程是否受到限制?有阻塞的端口嗎? – 2010-09-14 02:24:25