2015-11-18 1 views
1

Обновлено с PHP 5.3 до PHP 5.4, и теперь все сайты Phalcon на сервере дают 502 ошибку.Обновление PHP, теперь Phalcon/Nginx больше не работает

Box информация: Centos 6,5 PHP 5,4 Nginx 1,6 Phalcon 2,0

сообщения об ошибках: Browser показывает:

502 Bad Gateway 

Nginx Log:

[error] 27662#0: *6 recv() failed (104: Connection reset by peer) while reading response header from upstream 

PHP- Журнал FPM:

WARNING: [pool www] child 27667 exited on signal 4 (SIGILL) after 272.690790 seconds from start 

nginx и php-fpm были перезапущены много раз. Phalcon переустанавливается много раз.

PHP-FPM Conf:

include=/etc/php-fpm.d/*.conf 
pid = /var/run/php-fpm/php-fpm.pid 

PHP-FPM www.conf

listen = /var/run/php5-fpm.sock 
listen.owner = nginx 
listen.group = nginx 
user = nginx; 
group = nginx; 
pm = dynamic 
pm.max_children = 5 
pm.start_servers = 2 
pm.min_spare_servers = 1 
pm.max_spare_servers = 3 
pm.max_requests = 500 
security.limit_extensions = false 
php_value[session.save_handler] = files 
php_value[session.save_path] = /var/lib/php/session 

путь сеанса уже проверен на разрешения и права собственности, так что это хорошо.

Nginx Conf:

server { 
listen  IPADDR:80; 
server_name sub.domain.com; 

index index.php index.html index.htm; 
set $root_path '/var/www/projectname/public'; 
root $root_path; 

location/{ 
    try_files $uri $uri/ @php_mvc; 
} 

location @php_mvc { 
    rewrite ^(.+)$ /index.php$1 last; 
} 

location ~ ^(.+\.php)(/.*)?$ { 
    fastcgi_split_path_info ^(.+\.php)(/.*)?$; 

    set $script_filename $document_root$fastcgi_script_name; 

    if (!-e $script_filename) { 
     return 404; 
    } 

    fastcgi_pass unix:/var/run/php5-fpm.sock; 
    fastcgi_index index.php; 
    include fastcgi_params; 

    fastcgi_param APPLICATION_ENV development; 
    fastcgi_param SCRIPT_FILENAME $script_filename; 
    fastcgi_param SCRIPT_NAME $fastcgi_script_name; 
    fastcgi_param PATH_INFO $fastcgi_path_info; 
} 

location ~* ^/(css|img|js|flv|swf|download|images)/(.+)$ { 
    root $root_path; 
} 
} 

Любая помощь очень ценится!

+0

Я получил эту ошибку до и после смешной суммы. Специальное исследование Nginx закончилось тем, что обнаружило изгоев PHP 'exit', который остался висящим. –

ответ

1

Хорошо, я, наконец, нашел ответ в списке вопросов о github в Phalcon.

Это сообщение: Phalcon Github issue 2593

Решение было удалить всю Phalcon код, а затем перекомпилировать его вручную с помощью:

cd build/64bits 
phpize 
export CFLAGS="-O2 -g" 
./configure 
make 
sudo make install 

я мерзавец клонировали свежую версию этого источника, чтобы сделать конечно. Удаление предыдущего кода было более для меня, чтобы убедиться, что он не захватил любую кэшированную конфигурацию. Надеюсь, это поможет кому-то еще сэкономить несколько часов!

+0

Собирался написать, что вы должны перекомпилировать phalcon для новой конфигурации. – yergo