Задать вопрос
@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']);
  • Вопрос задан
  • 3412 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 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);    
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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