@ljutaev
html-програмист

Как настроить 301 редирект?

Необходимо настроить 301-й редирект со страниц с несколькими слэшами в URL между папками на соответствующие им страницы с одним слэшом в URL
  • Вопрос задан
  • 35 просмотров
Пригласить эксперта
Ответы на вопрос 2
Vnevremen
@Vnevremen
digital designer
Есть плагин Simple 301 Redirects, с его помощью можно сделать например так:

Request: /some/old/folder/*
Destination: /*
Ответ написан
Комментировать
Tomio
@Tomio
backend developer (python, php)
$url = $_SERVER['REQUEST_URI'];  // например, там будет /qwerty/////asdf/zxcv/ghjk//yahoo/;
$pattern = "~\/{2,}~";

if(preg_match($pattern, $url) !== false){
	$newUrl = preg_replace($pattern, '/', $url);
	header("HTTP/1.1 301 Moved Permanently");
	header('Location: http://'.$_SERVER['SERVER_NAME'].newUrl);
	exit();  
}

Проверяем урл на наличие двух и более идущих друг за другом слэшей. Если вхождение есть, то заминяем n-количество слэшей на один и делаем редирект на этот новый урл.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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