Сайт Zend Framework зависает - PullRequest
       16

Сайт Zend Framework зависает

2 голосов
/ 22 ноября 2011

Я уже несколько месяцев тестирую сайт ZF 1.11 на сервере Apache. Этим утром я попытался запустить некоторые тесты, и мой сайт просто завис (введенный URL, и мой браузер просто говорит, что ждет ответа от ...). Я довольно хорошо исправляю исключения в своем коде, но я даже не получаю исключения. Я, должно быть, что-то изменил, но я потратил 5 часов на это, и я застрял.

Я переключил сайт с https на http (и много раз перезапускал httpd).

Я обновил весь свой php-код с того, что у меня работает на рабочем сервере (клон dev-сервера с разными сертификатами).

Я изменил ведение журнала для отладки в файле httpd conf.

Я вижу сообщения отладки в журнале при попадании на сервер:

[Tue Nov 22 12:40:25 2011] [debug] proxy_util.c(1818): proxy: grabbed scoreboard slot 0 in child 30181 for worker proxy:reverse
[Tue Nov 22 12:40:25 2011] [debug] proxy_util.c(1837): proxy: worker proxy:reverse already initialized
[Tue Nov 22 12:40:25 2011] [debug] proxy_util.c(1934): proxy: initialized single connection worker 0 in child 30181 for (*)

Я вижу, как время доступа к файлу Bootstrap.php меняется каждый раз, когда я обновляю браузер. просмотрел логи httpd и вижу запрос, но вижу только запрос.

Иногда измененное время на моем контроллере (IndexController.php) обновляется, но не всегда ??

Я инициализирую регистратор в моей Bootstrap, поэтому я добавил вызов, чтобы напечатать сообщение о том, что линия была нажата. После опечатки, которая вызвала сообщение об исключении в браузере, теперь я иногда получаю сообщения в своем журнале ... но не всегда.

Я могу получить доступ к файлам в своем каталоге public / images через браузер. Другой сайт на этом сервере также работает.

Я обновил php.ini для отправки отладочных сообщений в системный журнал, за исключением исключения, которое я упомянул выше. Я не вижу никаких ошибок.

Я думаю, что мне нужно некоторое руководство о том, как следовать потоку через структуру Zend. Я предполагаю, что проблема в Bootstrap или вскоре после этого. Вот мой Bootstrap.php. Это довольно просто.

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap {

    // anything here that starts with "_init" will be run at startup

    protected function _initSession() {
        $doctypeHelper = new Zend_View_Helper_Doctype();
        $doctypeHelper->doctype('XHTML1_TRANSITIONAL');

        Zend_Session::start();

    }

    protected function _initLog() {
        $options = $this->getOptions();
        $logpath = $options['logpath'];

        $logger = new Zend_Log();
        $writer = new Zend_Log_Writer_Stream($logpath);
        $logger->addWriter($writer);

        Zend_Registry::set("logger", $logger);

        $logger->log("Bootstrap.php - initLog complete", Zend_Log::INFO);
    }

    public function _initDbAdapter() {
        $resource = $this->getPluginResource('multidb');
        $resource->init(); // Don't forget to initialize the resource first

        $cpDB = $resource->getDb('cp');
        $openfireDB = $resource->getDb('openfire');

        Zend_Registry::set('cpDB', $cpDB);
        Zend_Registry::set('openfireDB', $openfireDB);

    }
}

Любые указатели приветствуются.

Ken

Ответы [ 3 ]

1 голос
/ 27 июня 2016

У нас была очень похожая проблема с новым развертыванием сервера и отключением IPV6.

0 голосов
/ 28 ноября 2011

xdebug - это то, что мне было нужно, чтобы понять, что происходит.

0 голосов
/ 24 ноября 2011

Это не ошибка php. Это Apache, вероятно, связанный с обновлением Apache. Попробуйте отключить модули, связанные с прокси в Apache. Смотрите это обсуждение .

a2dismod proxy proxy_connect proxy_ftp proxy_http  proxy_ajp proxy_balancer proxy_html proxy
...