t-alexashka
@t-alexashka
Сразу пишу legacy код

Как заменить кучу урлов 301ым редиректом?

Есть урлы вида:

site.ru/abc/1
site.ru/abc/2
site.ru/abc/3
...


их много

сейчас задача сделать алиасы этим урлам чтобы было

site.ru/abc/1-title-page
site.ru/abc/2-title-page
site.ru/abc/3-title-page


посоветуйте как бы так сделать, без последствий для поисковиков, чтобы не послали долеко :)

спасибо
  • Вопрос задан
  • 2611 просмотров
Решения вопроса 1
DmitriyEntelis
@DmitriyEntelis
Думаю за деньги
В коде php
header("HTTP/1.1 301 Moved Permanently"); 
header("Location: http://site.ru/abc/1-title-page"); 
die();


UPD
Тут ниже @Scorpi и @KorsaR-ZN пишут "сделайте через веб-сервер".
Во первых по маске редирект сделать не получится, т.к автору нужны ЧПУ
Во вторых можно конечно сделать редиректов по числу страниц - но это
а) гемморой, т.к автор сказал что страниц таких много
б) при большом количестве страниц будет достаточно медленно обрабатываться и тормозить весь сайт в целом. На php же это 1 запрос в базу что бы получить полный URL и один редирект.
Т.е по сути что бы показать страницу получается +1 запрос к серверу и +1 sql запрос.
Не думаю что у автора там огромный трафик.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Scorpi
@Scorpi
Не думаю что стоит тревожить PHP ради этого, сделайте через веб-сервер.
Ответ написан
Комментировать
KorsaR-ZN
@KorsaR-ZN
Если у Вас apache, то нужен модуль mod_rewrite.
и через файлик (.htaccess) в корне сайта, можно сделать 301 редирект по маске URL.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽