Ошибка прокси-сервера Laravel 502 при вызове определенного маршрута

#laravel #laravel-5 #http-status-code-502

#laravel #laravel-5 #http-status-code-502

Вопрос:

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

 Proxy Error
The proxy server received an invalid response from an upstream server.
The proxy server could not handle the request

Reason: Error reading from remote server
 

Я уже обнаружил некоторые распространенные проблемы в Интернете, однако все они были для пользователей, которые используют nginx. Я использую Laragon. Кроме того, версия Laravel — 5.5.21

Как я уже сказал, проблема заключается только в производственном коде. Этого не происходит, когда я запускаю его локально.

Я также пытался загрузить laravel.файл журнала с сервера, но там ничего не было.

Это функция, которая вызывается по маршруту:

 public function index(){
        if(empty(request()->query()) amp;amp; session()->exists('categories_filter')){
            return redirect(route('categories.index').'?'.http_build_query(session()->pull('categories_filter')));
        }

        if(!empty(request()->query())){
            $this->store_filter();
        }

        $categories = Category::orderBy($this->sort, $this->order);

        if($name_sk = request('name_sk')){
            $categories = $categories->where('name_sk', 'like', "%{$name_sk}%");
        }

        $categories = $categories->paginate(20);
        $all_categories = Category::with('children')->get();

        $sort = $this->sort;
        $order = $this->order;
        $new_order = $this->new_order;

        return view('admin.categories.index', compact('categories', 'sort', 'order', 'new_order', 'all_categories'));
    }
 

Я, честно говоря, понятия не имею, в чем проблема или в чем ее причина.

Комментарии:

1. 502 означает ошибку восходящего потока, то есть PHP-FPM. Проверьте свои журналы на наличие ошибок.

2. Я проверил файл журнала, и в нем ничего не было:

Ответ №1:

Итак, для людей, у которых есть подобная проблема, вот где была моя проблема:

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

Итак, чтобы объяснить это, причина этой ошибки заключается в том, что я отправлял слишком много запросов в базу данных с запросом одной строки. Это было проблемой, потому что при наличии умеренного объема данных загрузка просто занимала слишком много времени.