Помогите соеденить несколько редиректов

Sancho221

Постоялец
Регистрация
10 Окт 2011
Сообщения
76
Реакции
29
Может эти редиректы можно как-то соединить, а то у меня их уже много скопилось, хотелось бы уменьшить код.

PHP:
/* Редирект | начало */
$url_redirect = "";
switch ( $_SERVER['REQUEST_URI'] ) {
case "/страница.html" : $url_redirect = "[url]http://сайт.ru/страница[/url]"; break;
}
if ( $url_redirect != "" ) { header( "HTTP/1.1 301 Moved Permanently" ); header( "Location: " . $url_redirect ); }
/* Редирект | конец */

/* Редирект | начало */
$url_redirect = "";
switch ( $_SERVER['REQUEST_URI'] ) {
case "/страница2.html" : $url_redirect = "[url]http://сайт.ru/страница2[/url]"; break;
}
if ( $url_redirect != "" ) { header( "HTTP/1.1 301 Moved Permanently" ); header( "Location: " . $url_redirect ); }
/* Редирект | конец */

/* Редирект | начало */
$url_redirect = "";
switch ( $_SERVER['REQUEST_URI'] ) {
case "/страница3.html" : $url_redirect = "[url]http://сайт.ru/страница3[/url]"; break;
}
if ( $url_redirect != "" ) { header( "HTTP/1.1 301 Moved Permanently" ); header( "Location: " . $url_redirect ); }
/* Редирект | конец */
 
То есть просто глобально со "/stranica.html" на "/stranica"?

Вот так можно:

PHP:
RewriteBase /
RewriteRule (.*)\.html$ $1 [R=301,L]
 
Обычно редирект настраивают в htaccess, а для объединения нужны какие-то схожести, например
site.com/meganewz/1.html нужно перенаправить на site.com/news/1.html
тогда здесь достаточно выделить meganewz и перенаправить.

На сколько я понял ты просто хочешь отбросить для всех страниц окончание html ?
Или есть другие условия?
 
Видя такой код мне хочется спросить: неужели документации php является закрытым ресурсом, которые требует душу или денег за прочтение?

Для просмотра ссылки Войди или Зарегистрируйся - switch одна из самых простых возможностей большинства ЯП

PHP:
/* Редирект | начало */
$url_redirect = "";
switch ( $_SERVER['REQUEST_URI'] ) {
  case "/страница.html" : $url_redirect = "[url]http://сайт.ru/страница[/url]"; break;
  case "/страница2.html" : $url_redirect = "[url]http://сайт.ru/страница2[/url]"; break;
  case "/страница3.html" : $url_redirect = "[url]http://сайт.ru/страница3[/url]"; break;
}
if ( $url_redirect != "" ) { header( "HTTP/1.1 301 Moved Permanently" ); header( "Location: " . $url_redirect ); }
/* Редирект | конец */
 
Назад
Сверху