Ваш вопрос немного расплывчатый ... Правила, приведенные вами в качестве примера («НИКАКОГО ИЗ ЭТИХ РАБОТ») не имеют ничего общего с тем, что вы задаете в своем вопросе. И заявленный результат попыток переписывания определенно не соответствует вашим попыткам. Так что либо ваше описание неверно (возможно, записано из памяти?), Либо у вас есть какой-то другой фактор, о котором вы нам не говорите (логика некоторых приложений c, возможно, реализующая свое перенаправление?) ...
В любом случае, вот простые правила для реализации точного перенаправления, о котором вы спрашиваете, независимо от каких-либо других вещей:
RewriteEngine on
RewriteCond %{QUERY_STRING} (?:^|&)cPath=62(?:&|$)
RewriteRule ^/?shopping/index\.php$ /ceylon-cinnamon-c-2_19.html [R=301]
RewriteRule ^/?shopping/ceylon-cinnamon-c-62\.html$ /ceylon-cinnamon-c-2_19.html [R=301]
Хорошая идея - начать с временного перенаправления 302 и только изменить его. на постоянное перенаправление 301 позже, как только вы убедитесь, что все настроено правильно. Это предотвращает проблемы с кэшированием при испытаниях ...
Тем не менее, при тестировании убедитесь, что вы не смотрите на кэшированные результаты. При тестировании всегда используйте окно браузера anonymouse fre sh, выполняйте глубокие перезагрузки , а не просто перезагружайте и наблюдайте за сетевой консолью браузера на предмет фактического ответа, который вы получаете ...
Эта реализация будет Аналогичным образом работайте в конфигурации хоста http-серверов или внутри файла конфигурации Dynami c (файл ".htaccess"). Очевидно, что модуль перезаписи должен быть загружен внутри http-сервера и включен на хосте http. Если вы используете файл конфигурации Dynami c, вам нужно позаботиться о том, чтобы его интерпретация вообще была включена в конфигурации хоста и находилась в папке DOCUMENT_ROOT
хоста.
И общее замечание: вам всегда следует размещать такие правила в конфигурации хоста http-серверов вместо использования файлов конфигурации Dynami c (".htaccess"). Эти динамические c файлы конфигурации добавляют сложность, часто являются причиной неожиданного поведения, их трудно отладить, и они действительно замедляют работу http-сервера. Они предоставляются только в качестве последнего варианта для ситуаций, когда у вас нет доступа к реальной конфигурации хоста http-серверов (читай: действительно дешевые поставщики услуг) или для приложений, настаивающих на написании своих собственных правил (что является очевидным кошмаром безопасности).