Лучший подход для перенаправления большого количества старых URL-адресов на новые URL-адреса?

StackOverflow https://stackoverflow.com/questions/244879

Вопрос

Мы переформируем платформу для клиента, и они обеспокоены SEO. Их текущий сайт поддерживает SEO-дружественные URL-адреса, как и новая платформа. Поэтому для них мы просто создадим одно и то же сопоставление URL. Тем не менее, у них есть большое количество других URL-адресов, которые не являются SEO-дружественными, и которые они хотят перенаправить навсегда. Они не следуют подобному шаблону, поэтому одно регулярное выражение в .htaccess не будет его сокращать. Каков наилучший способ справиться с этим в стеке LAMP? Приложение также имеет фронт-контроллер, поэтому мне нужно убедиться, что он работает вместе с жесткими перенаправлениями.

Это было полезно?

Решение

Один подход (один я выбрал ) должен был создать простую таблицу старых и новых URL, а затем использовать mod_rewrite для чтения таблицы и выполнения перенаправлений. Таблица может находиться в файле, внешнем по отношению к конфигурации Apache.

Кроме того, вы можете написать скрипт для запроса к базе данных, если хотите, чтобы таблица находилась в базе данных.

Это означает, что вам нужно либо вручную создать отображение, либо написать сценарий для вывода этого файла отображения.

Другие советы

Вы можете использовать PHP для перенаправления старых URL-адресов на новые.

header("Location: /new.html",TRUE,301);

Вам все еще нужно будет перенаправить запросы к этому PHP-скрипту, но вы можете найти это более гибким и простым для отладки, чем исключительно с использованием mod_rewrite.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top