Я пытаюсь определить лучший способ перенаправить много URL-адресов навсегда с точки зрения производительности и работоспособности. Таким образом, есть 3 возможных способа, которыми я мог представить изображение:

  • .htaccess RewriteRule
  • Функция заголовка PHP ищет подходящие URL в массиве
  • Функция заголовка PHP, перемещающаяся в базу данных MySql

Речь идет не о переадресации всего домена, а только о некоторых URL доменов. Например, когда названия продуктов меняются с чего-либо на что-либо:

www.example.com/something > www.example.com/anything_else

в то время как URL-адреса, такие как www.example.com/totally_differnt, остаются нетронутыми.

1 ответ1

1

Если вы выбираете тонкую грань между управляемостью и производительностью, я предлагаю двухэтапный процесс (мы используем то же самое для нашей конфигурации HTTP-маршрутизации):

  1. URL-адреса существуют в базе данных для удобства сопровождения
  2. Скрипт (bash, PHP, что угодно) создает скрипт PHP из БД и шаблона, определяя массив с исходным путем в качестве ключа и новым путем в качестве значения, затем просматривая запрошенный путь к документу и, если он найден, перенаправляет на новый, если не показывает 404. Этот "скрипт создания скрипта" запускается, если изменяется БД
  3. Сгенерированный скрипт используется как запасной вариант 404

Если вы используете HHVM или кэш кода операции, это невероятно быстро: сам код готов, и все, что нужно сделать, - это поиск по хешу.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .