Ребята, хелп! Старый сайт был на Joomla. С тех пор кое-где в сети остались ссылки, по которым активно переходит народ. Старый адрес был вида
/index.php?option=com_content&task=view&id=217&Itemid=41 Новый /blog/user/article-title
Пробовал и синоним создавать на ноду, и Redirect через .htaccess - бесполезно. Все равно на главную страницу перенаправляет. Есть еще народные рецепты?
Комментарии
Пишете модуль, в нём hook_init, в нём смотрите на REQUEST_URI и если это похоже на адрес Joomla (по GET параметрам), выдаете 301-й редирект на новый адрес.
Спасибо, но модуль, по-моему, черезчур для нескольких адресов. Тем более, что я от программизма далек, по туториалам еще что-то могу, но не более.
mod_rewrite-ом через .htaccess
Спасибо, попробую. Надо еще поискать, как им пользоваться.
Я так вижу по ссылкам никакой закономерности и совпадения номеров нет.
Варианты:
1. Для каждой ссылки прописывать редирект в .htaccess типа:
RewriteRule ^(.*)$ http://site.ru/blog/user/article-title [R=301,L]
...
RewriteCond %{REQUEST_URI} ^/index.php?option=com_content&task=view&id=217&Itemid=423123
RewriteRule ^(.*)$ http://site.ru/blog/user333/article-title-234234 [R=301,L]
2. Таки писать модуль.
3. Ничего не делать, а редиректить на главную и пусть разбираются...
Что-то не получается. Есть подозрение, что внутри стандартного .htaccess, или ещё где-то есть какое-то правило, которое доминирует над моими попытками прописать своё. Только вот что это может быть? Пока что оставил как есть - редиректится на главную. Спасибо, что не оставили мою просьбу без внимания!
вариант там в базе - жестоко можно и в массив в PHP загнать если штук 200-300 адресов.
модуль path_redirect и каждую страницу заносить вручную.