Laravel на Cloudflare выдает 502 Bad Gateway при ошибках формы

В моем приложении Laravel у меня есть форма, которая проверяется с помощью стандартной проверки Laravel. Если это не удается, он просто перенаправляется обратно в ту же форму и отображает ошибки. Это отлично работает на моем локальном компьютере, а также на сайте разработчиков (который размещен на том же сервере, что и производство).

Однако на моем производственном сайте из-за ошибки создается страница 502 Bad Gateway (отображаемая CloudFlare).

Единственное различие, которое я могу найти между сайтами разработки и производства (или промежуточными), - это конфигурация среды (особенно APP_ENV). Я бы подумал, что это может быть ошибка, связанная с SSL и перенаправлением, но среда разработки имеет те же настройки SSL, что и постановка и производство, но разработчик показывает ошибки на странице, как и должно быть, тогда как постановка и производство показывают 502. Я ничего не нашел в журналах ошибок nginx или Laravel. Я хотел бы получить какое-то направление, если кто-то имел дело с этим, где искать, будь то конфигурация ngnix, конфигурация Cloudflare, конфигурация SSL или конфигурация Laravel.

2 ответа

Решение

Похоже, это было решено с помощью следующего ввода в конфигурацию nginx:

fastcgi_buffers 16 16k; 
fastcgi_buffer_size 32k;

Пока никаких побочных эффектов, я дам ему несколько дней, чтобы убедиться, что все работает хорошо, прежде чем подтверждать это как исправление.

в наборе конфигов Nginx

      fastcgi_intercept_errors off;

Он определяет, должны ли ответы сервера FastCGI с кодами больше или равными 300 передаваться клиенту или перехватываться и перенаправляться в nginx для обработки директивой error_page.

Синтаксис: fastcgi_intercept_errors on | выключенный;

По умолчанию: fastcgi_intercept_errors выключен;

Контекст: http, сервер, местоположение

Другие вопросы по тегам