2011-03-20 51 views
0

我有兩個使用Symfony框架開發的網站。一個使用SF 1.3.8,另一個使用SF 1.4.8Symfony項目不是生成php錯誤文件

運行v 1.3.8的項目將PHP相關錯誤記錄在php_errors.log文件中,而使用v 1.4.8的項目不會創建任何此類文件。

我檢查了兩個項目的proj/apps/frontend/config/settings.yml,我似乎無法發現任何差異。

他們都已經(在應用程序/前端/配置/ settings.yml中):

dev: 

    .settings: 

    error_reporting:  <?php echo (E_ALL | E_STRICT)."\n" ?> 



test: 

    .settings: 

    error_reporting:  <?php echo ((E_ALL | E_STRICT)^E_NOTICE)."\n" ?> 

有誰知道這是爲什麼發生?

+1

你在logging.yml中配置了哪些日誌記錄設置?錯誤報告!=日誌記錄 – richsage 2011-03-20 12:45:01

+0

@richsage:factories.yml文件之間沒有區別(此外,我沒有引用正在生成的應用程序日誌)。我認爲它的apache而不是Symfony是創建php錯誤文件。我將不得不進一步調查。 – oompahloompah 2011-03-20 13:36:27

+0

對不起 - 誤讀。是的,這聽起來像一個PHP/Apache的問題。檢查您的php.ini文件以查看文件日誌記錄是否已關閉... – richsage 2011-03-20 15:48:35

回答

0

從你與richsage的對話中,你可能已經破解了它。以下是我的想法:

如果它在一個項目中工作,但不在另一個項目中,前者的虛擬主機文件很可能包含CustomLog directive。這可以在像這樣每一個虛擬主機設置:

CustomLog [PATH_TO_LOG] "%h %l %u %t \"%r\" %>s %b" 

(標準格式見here更多選項)

1

你檢查你的引導程序? (index.php

應該是這樣的:

$configuration = ProjectConfiguration::getApplicationConfiguration('backend', 'dev', true); 

最後一個參數是調試 - 標誌

我不知道這是否會影響日誌寫入,但我可以想象它不會傷害嘗試。