Обновите PHP, теперь Phalcon / Nginx больше не работает

1

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

Информация о коробке: Centos 6.5 PHP 5.4 nginx 1.6 Phalcon 2.0

Сообщения об ошибках: Браузер показывает:

502 Bad Gateway

Журнал Nginx:

[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 были перезапущены многократно. Фалкон переустанавливается много раз.

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 привело к обнаружению мошеннического exit; PHP exit; это оставалось торчать.
Теги:
nginx
phalcon

1 ответ

1
Лучший ответ

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

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

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

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

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

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню