2010-06-03 50 views
3

我在应用程序服务器上安装了全新的Zend Framework v1.10.5。唯一的修改是下面的两个init方法,我只需简单地设置一个记录器并将其作为引导过程的一部分写入。在Zend Framework中重复引导

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap 
{ 
    protected $_log; 

    protected function _initLogging() 
    { 
     $log = new Zend_Log(); 
     $writer = new Zend_Log_Writer_Stream(
      APPLICATION_PATH . '/../data/logs/app.log'); 
     $log->addWriter($writer); 
     $this->_log = $log; 
     $this->_log->info('Logging initialized.'); 
    } 

    protected function _initHello() 
    { 
     $this->_log->debug('Hello!'); 
    } 
} 

当我提出一个要求(初始化应用程序),以下行出现在我的app.log ...

2010-06-04T05:24:41+00:00 INFO (6): Logging initialized. 
2010-06-04T05:24:41+00:00 DEBUG (7): Hello! 
2010-06-04T05:24:41+00:00 INFO (6): Logging initialized. 
2010-06-04T05:24:41+00:00 DEBUG (7): Hello! 

是否有人可以解释为什么Zend公司似乎两次自举程序?再次,这是Zend Framework的一个全新的(开箱即用的)实例。

+0

你如何引导应用程序? – nuqqsa 2010-06-04 08:44:13

回答

4

这可能是两种:

  1. 对每个请求,您的浏览器也正在请求http://yourdomain.com/favicon.ico,它不存在。因此这个请求也将通过ZF,它将经历相同的引导过程。为了避免这种情况,您可以创建一个favicon文件或者修改.htaccess文件,这样请求就不会通过ZF。

  2. 你有一个application.ini文件,它也是引导记录器。如果是这种情况,请你可以编辑你的文章以包含你的application.ini文件(删除密码等)。

+0

你是对的,对我来说这很尴尬。我从来没有想过检查访问日志,因为这是/我们开发环境中的新鲜/未触及的ZF安装。幸运的是,我们正常的日志记录过程将在未来发现。感谢您的回应! – jeyroz 2010-06-04 13:27:31