Задать вопрос

Почему Nginx+PHP-FPM не работают после aptitude upgrade?

Есть у меня сервак, чтобы немного учиться на нем админить. Месяца два туда не заходил и решил вчера от нечего делать сделать aptitude upgrade. После чего хосты больше не работают, в логах nginx, php и syslog не нашел ничего. Если сервис php стопнуть, то nginx выдает 502.
nginx - 1.8
php-fpm - 5.6

Конфиг nginx:

server{
        listen   80;
        server_name telesovet.litravechera.ru;
        root /var/www/telesovet;
        index index.php;

        location / {
                try_files $uri $uri/ /index.php?$args;
        }

        location ~ \.php$ {
                include fastcgi_params;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
        }
}


В PHP5, www.conf listen у меня 127.0.0.1:9000. Делал через сокет и менял конфиг nginx, но ничего не добился.
drwxrwxrwx 2 root root 4096 Jul 3 12:12 telesovet
-rwxrwxrwx 1 root root 131 Jul 3 11:30 index.php
-rw-r--r-- 1 root root 7 Jul 3 12:12 test.txt

При запросе test.txt он отдается.

Подскажите пожалуйста, идей уже нет.
P.S. Задаю вопрос с надеждой либо на ответ, либо на магическое событие, когда всё само начинает работать стоит лишь спросить.
  • Вопрос задан
  • 1315 просмотров
Подписаться 4 Оценить Комментировать
Решения вопроса 1
daager
@daager Автор вопроса
Нашел в чём проблема. Всем спасибо за ответы. Проблема оказалась в конфиге nginx, а точнее в параметре listen.
Выдержка из документации:
Если же директив с параметром default_server нет, то сервером по умолчанию будет первый сервер, в котором описана пара адрес:порт.
ссылка

Были другие и конфиги, а в них как раз "listen ip:port" и получается, что listen важнее, точного совпадения с server_name. Так что нужно быть внимательным, да и listen просто так не юзать.
Еще раз спасибо.
P.S. Хотя всё равно странно почему всё сломалось после обновления.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
Adamos
@Adamos
- include fastcgi_params
+ include fastcgi.conf
Ответ написан
Комментировать
dvachek
@dvachek
В nginx 1.8 какая-то директива стала обязательной для указания в блоке location передающем запрос в php, только какая не помню, просто посмотри примеры конфигов именно для 1.8.
Ответ написан
miraage
@miraage
Старый прогер
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы