Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 22.01.2019 13:12:56

Проблема с nginx в homestead

Проблема следующая, установил Homestead, создал проект на Laravel.
При первом посещении какой-либо страницы проекта вылазит ошибка nginx 502 Bad Gateway. При этом, если обновить страницу, то страница корректно отображается.
Например, я захожу в корень сайта, вылазит ошибка, обновляю страницу, страница загружается. Затем перехожу на страницу /login, все точно так же, сначала ошибка, после обновления загружается. Возвращаюсь в корень сайта и снова ошибка.
Какая причина может быть у данной проблемы?

Не в сети

#2 22.01.2019 13:37:13

Re: Проблема с nginx в homestead

вот тут в комментарияъ есть рецепты
https://laravel.io/forum/05-14-2014-502 … ion-denied


There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.

Не в сети

#3 22.01.2019 13:41:43

Re: Проблема с nginx в homestead

https://developernote.com/2012/09/how-i … way-error/

each time I install Nginx I add this to /etc/nginx/nginx.conf, at least in versions 1.1.19 on Ubuntu 12.04 and 1.10.3 on Ubuntu 16.04 this works fine:
   

http {
        #My custom settings
 
        fastcgi_buffers 8 16k;
        fastcgi_buffer_size 32k;
 
        client_max_body_size 24M;
        client_body_buffer_size 128k;
        ...
}

Without this settings I got ‘502 Bad Gateway error’


There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.

Не в сети

#4 23.01.2019 10:41:40

Re: Проблема с nginx в homestead

Спасибо за помощь, но, к сожалению, вышеописанные советы не помогли.

В логах nginx пишет следующую ошибку:

[error] 3348#3348: *5 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.10.1, server: lara.loc, request: "GET /contact HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.3-fpm.sock:", host: "lara.loc"

Может это как-то поможет разобраться?

UPD:
В логах PHP следующая ошибка:
[pool www] child 9221 exited on signal 11 (SIGSEGV - core dumped) after 1506.246210 seconds from start
NOTICE: [pool www] child 9731 started

Изменено Danil (23.01.2019 11:03:16)

Не в сети

#5 23.01.2019 12:04:04

Re: Проблема с nginx в homestead

Ого! То есть PHP крешится. А в консольным пхп нет проблем? Я бы при таких раскладах попробовал обновить/переустановить заново пхп в линуксе.
Но сначала надо исключить версию, что креш происходит из-за кривого скрипта. Если в тех же условиях какой-то сайт на другом движке работает как ни в чем ни бывало, может быть это ваши руки виноваты smile
Есть сведения, что сегфолт можно вызвать зациклившейся регуляркой, например.

Изменено artoodetoo (23.01.2019 12:17:03)


There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.

Не в сети

#6 23.01.2019 12:05:05

Re: Проблема с nginx в homestead

Возможно какое-то расширение кривое используется.


There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.

Не в сети

#7 26.01.2019 15:14:00

Re: Проблема с nginx в homestead

[pool www] child 9221 exited on signal 11 (SIGSEGV - core dumped) after 1506.246210 seconds from start

А точно та ошибка? "after 1506.246210 seconds" говорит, что скрипт висел 25 минут, прежде чем упал, а вы писали: "При этом, если обновить страницу, то страница корректно отображается." - 25 минут точно ждали?

Есть сведения, что сегфолт можно вызвать зациклившейся регуляркой, например.

Это надо очень-очень постараться. Возможно, в системе несовместимые библиотеки, PHP был собран не на тех, которые есть сейчас. Лучше попробовать все удалить (со всеми зависимостями), обновить apt/yum/что там у вас, и поставить заново из пакетов.

Не в сети

#8 30.01.2019 11:59:37

Re: Проблема с nginx в homestead

Спасибо за участие в решении проблемы! Проблема все еще актуальна.
Попробую описать подробнее. В Laravel я новичок, только начинаю с ним ознакамливаться. До этого я использовал OpenServer, с ним было все нормально.
Решил попробовать Homestead. Установил его по инструкции.
Загрузил на сервер Laravel-проект с помощь composer create-project --prefer-dist laravel/laravel blog
Сам проект запускается и работает корректно, но стоит мне добавить новый роут, и при переходе по роутам начинаются вышеописанные проблемы.
В администрировании Линукса я, к сожалению не силен, поэтому не могу понять в чем проблема.
Я создал в Homestead свой проект на чистом php, там проблем с редиректами не возникает. Т.е. могу предположить, что проблема все-таки с проектом Laravel.

А точно та ошибка? "after 1506.246210 seconds" говорит, что скрипт висел 25 минут, прежде чем упал, а вы писали: "При этом, если обновить страницу, то страница корректно отображается." - 25 минут точно ждали?

Ошибка точно та. 25 минут не ждал, просто обновляю страницу несколько раз, пока не пропадет ошибка и загрузится страница. Вот сейчас еще раз проверил логи:

[30-Jan-2019 08:29:32] WARNING: [pool www] child 9611 exited on signal 11 (SIGSEGV - core dumped) after 1942.644174 seconds from start
[30-Jan-2019 08:29:32] NOTICE: [pool www] child 10003 started
[30-Jan-2019 08:29:38] WARNING: [pool www] child 6258 exited on signal 11 (SIGSEGV - core dumped) after 25575.176426 seconds from start
[30-Jan-2019 08:29:38] NOTICE: [pool www] child 10005 started
[30-Jan-2019 08:49:38] WARNING: [pool www] child 10005 exited on signal 11 (SIGSEGV - core dumped) after 1199.931586 seconds from start
[30-Jan-2019 08:49:38] NOTICE: [pool www] child 10233 started
[30-Jan-2019 08:52:54] WARNING: [pool www] child 10003 exited on signal 11 (SIGSEGV - core dumped) after 1401.654823 seconds from start
[30-Jan-2019 08:52:54] NOTICE: [pool www] child 10289 started

Действительно, очень странные цифры. Запись появляется после 502 ошибки.

Возможно, в системе несовместимые библиотеки, PHP был собран не на тех, которые есть сейчас.

Но ведь Homestead - это специально подготовленная сборка, продвигаемая разработчиками Laravel. Очень странно, что все это не работает из коробки. Неужели у всех такие проблемы?

Не в сети

#9 30.01.2019 14:33:57

Re: Проблема с nginx в homestead

Похоже, такая проблема действительно у всех, кто использует последнюю версию Homestead.
Как я понял, проблема заключается в том, что расширение xdebug пока не совместимо с php7.3.
Есть два решения данной проблемы:
- Отключение xdebug для php7.3
- Использование в проекте php7.2 и ниже

Оба варианта проверил, помогло.
В дальнейших обновлениях Homestead данная проблема должна быть устранена.
Всем спасибо за помощь, тему можно закрыть.

Не в сети

Подвал раздела