APC вызывает код ошибки HTTP 500 в symfony, выполняемый через php5-cgi - PullRequest
0 голосов
/ 28 марта 2012

В настоящее время я выполняю PHP через mod_fastcgi (под Apache, конечно), и когда я включаю APC в моем файле конфигурации php.ini, symfony выдает мне 500 случайных ошибок.

Когда я вызываю app.php или app_dev.php в первый раз после перезапуска Apache, он работает нормально, однако любая последующая перезагрузка вызывает ошибку 500.

Вот некоторые логи от Apache,

FastCGI: incomplete headers (0 bytes) received from server "/var/www/bin/php-fastcgi"
Connection reset by peer: [client ******:18656] FastCGI: comm with server "/var/www/bin/php-fastcgi" aborted: read failed
FastCGI: incomplete headers (0 bytes) received from server "/var/www/bin/php-fastcgi"

/var/www/bin/php-fastcgi моя обертка:

#!/bin/sh

PHP_FCGI_CHILDREN=5
export PHP_FCGI_CHILDREN
PHP_FCGI_MAX_REQUESTS=500
export PHP_FCGI_MAX_REQUESTS

umask 0022
exec /usr/local/bin/php-cgi -d apc.shm_size=16M

Дайте мне знать, если у вас есть какие-либо подсказки, любая помощь будет принята с благодарностью!

Обновление: При необходимости вот мой phpinfo(): https://pobourgeois.com/?phpinfo

Update2: Я думаю, что моя проблема, вероятно, в Symfony, потому что все мои другие сайты загружаются нормально. Нужна ли какая-либо специальная конфигурация в Sympfony при использовании APC?

Ответы [ 2 ]

2 голосов
/ 29 марта 2012

Мне удалось решить эту проблему самостоятельно, скомпилировав APC напрямую из SVN. (Большое спасибо Maerlyn!)

Если кто-то столкнется с той же проблемой, вот шаги, чтобы все работало вместе:

$ svn co http://svn.php.net/repository/pecl/apc/trunk/ apc-trunk
$ cd apc-trunk/
$ ./configure --enable-apc --with-php-config=/usr/local/bin/php-config
$ make
$ make test (optional)
$ make install

Кроме того, не забудьте загрузить новое расширение в файл php.ini и перезапустить веб-сервер.

Вот и все!

1 голос
/ 20 ноября 2012

Для меня

$ phpize
до
$ ./configure
отсутствует

Исправляет мою ошибку с symfony2 500 Apache2 после одного первого запроса

в 64-битной Linux Ubuntu 12.10

...