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

Как исправить Циклическое перенаправление на странице?

Циклическое перенаправление на странице

Firefox определил, что сервер перенаправляет запрос на этот адрес таким образом, что он никогда не завершится.

Эта проблема может возникать при отключении или запрещении принятия кук.
<?php

namespace App\Http\Middleware;

use Closure;

class Mymiddleware
{
    public function handle($request, Closure $next)
    {
        if($request->route('page') != 'pages' ) {
            return redirect()->route('home');
        }

        return $next($request);
    }
}

<?php

Route::get('/', ['as'=>'home','uses'=>'Admin\IndexController@show']);
Route::get('/about/{id}','FirstController@show');
Route::get('/articles',['uses'=>'Admin\Core@getArticles','as'=>'articles']);
Route::get('/article/{id}',['uses'=>'Admin\Core@getArticle','as'=>'article']);
Route::get('/article/{page}',['middleware'=>'mymiddle:home','uses'=>'Admin\Core@getArticle','as'=>'article']);
Route::get('/pages', [PagesController::class, 'getIndex']);
  • Вопрос задан
  • 4129 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    PHP-фреймворк Laravel
    2 месяца
    Далее
  • Яндекс Практикум
    Фулстек-разработчик расширенный
    20 месяцев
    Далее
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
Решения вопроса 1
megakor
@megakor
Go/PHP developer | ВКонтакте
Вы опишите задачу, которая стоит перед вами.
В данный момент у вас действительно бесконечный редирект.
Попробуйте так, отредактировав логику перенаправления:

public function handle($request, Closure $next)
{
    if(! in_array($request->route()->getName(), ['home', 'pages'])) {
        return redirect()->route('home');
    }

    return $next($request);    
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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