2013-07-31 83 views
0

我有一個web應用程序,允許用戶上傳PDF,然後將通過swiftmailer通過電子郵件發送給我們。使用一些pdf,過程失敗。Swiftmailer崩潰沒有php錯誤

我可以驗證它崩潰的PHP腳本,但沒有返回PHP錯誤。服務器出現500錯誤,但通常如果出現500錯誤,php會記錄錯誤是什麼。

我也已經驗證了它崩潰的 $mailer->send($message);

奇怪的是,只有一些PDF文件崩潰了,和那些相同的PDF文件的工作具有相同代碼的開發服務器上的罰款。

什麼可能導致PHP崩潰沒有錯誤信息?

+0

請務必在服務器中啓用[啓用PHP日誌](http://www.php.net/manual/en/errorfunc.configuration.php)。 –

+0

PHP已成功記錄錯誤和警告數月。這是唯一一個在崩潰時不記錄錯誤的進程。這不是PHP的配置。 它也不是它的上傳部分,因爲我已驗證文件正確上傳。 – starshine531

+0

也許swiftmailer代碼禁止在運行時記錄。 –

回答

0

運行幾次測試後,我發現錯誤記錄發生在某些時間,但沒有發生。我沒有弄清楚爲什麼會這樣,但是,我嘗試重命名php-errors.log文件,以便php以新的新日誌文件開始,現在錯誤已正確記錄。我不知道爲什麼會這樣,但我會接受。

0

僅供參考,我碰到的兩件事情,可能會導致PHP崩潰沒有一條錯誤信息:

  1. 腳本超時 - 超時可能會阻止返回的錯誤信息;在我的特殊情況下,當超時發生時,腳本正在等待SMTP響應,這可能是我沒有收到超時消息的原因。嘗試將您的max_execution_timephp.ini更改爲300(5分鐘),然後查看是否可以收到實際的錯誤消息。
  2. 文件夾權限 - 我遇到了文件夾權限不足導致腳本停止而沒有提供錯誤的情況。

在2的情況下,我纏這是造成暫停行了try/catch條款,我終於得到了一個異常露面解釋有關的權限問題。這可能值得嘗試作爲對無聲崩潰的一般迴應。