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, сервер, местоположение