Переадресация — это автоматический переход с одного адреса (URL) на другой. Переадресации могут быть полезны, в частности, при редизайне сайта или при переводе статического сайта на NetCat. Например, если на старом сайте новости располагались по адресу /news.html, а на новом — по адресу /press/news/, имеет смысл создать автоматическую переадресацию со старого адреса на новый, чтобы те посетители, у которых эта страница занесена в закладки или которые привыкли набирать адрес вручную, автоматически попали на нужную страницу. Также переадресации полезны для посетителей, приходящих на сайт через поисковые машины, которые индексируют страницы не ежедневно, а с какой-то периодичностью, и после изменения адресов страниц некоторое время будут хранить старые координаты.
Также переадресации могут быть актуальны для организации «коротких адресов». К примеру, вам приходится часто давать по телефону адрес страницы, «запрятанной» глубоко на сайте. Вместо того чтобы каждый раз диктовать URL вида mysite.ru/catalog/food/drinks.html, вы можете создать переадресацию на эту страницу с адреса mysite.ru/drinks и диктовать этот короткий адрес.
Для добавления или изменения переадресации вам необходимо ввести два адреса: старый и новый. В адресах можно использовать символ «звездочка» «*», который означает любую строку. Т.е. если вы в качестве старого адреса указываете «/catalog/*», это означает, что все страницы, адрес которых начинается с «/catalog/», будут переадресовываться на новый URL.
Адрес должен начинаться с домена, но без http://
Например:
Старый URL — example.net/to/url/*/*/*/*/
Новый URL — netcat.ru/*1/*2/*3/*4/
В данном примере страница example.net/to/url/a/b/c/d/ будет перенаправляться на аналогичную страницу netcat.ru/a/b/c/d/. Т.е. параметры адреса (те, что будут введены вместо «*») из старого подставляются в новый адрес.
Обратите внимание, что в поле «Новый URL» необходимо указывать порядковый номер фрагмента, обозначенный звёздочкой в старом URL: «*1», «*2» и т. д., а не просто «*».
Если старый URL содержит звёздочку, то в нём необходимо экранировать знак «?»:
Старый URL — example.net/catalogue.php\?item_id=*
Новый URL — example.net/catalogue/catalogue_*1.html
Пример корректного написания адресов указан на странице по умолчанию.
Старый: example.net/about/*/vasya/*/
Новый: example.net/*2/*1/
Старый: example.net/url/*/index.html
Новый: example.net/url/index.html
Начиная с версии 5.5 (FB1436) появилась возможность группировки переадресаций. Например, с помощью группировки вы можете создавать правила для отдельных сайтов.
Комментарии 7
1)Старый: Домен/catalog/subdivision/*.html
Новый: Домен/catalog/sub/subdivision/*.html
2)Старый: Домен/catalog/subdivision/
Новый: Домен/catalog/sub/subdivision/
Если пытаться одной строкой, как в мануале
Старый: Домен/catalog/subdivision/*
Новый: Домен/catalog/sub/subdivision/*1
то объекты переадресуются нормально, а основной адрес Домен/catalog/subdivision/ приводит к зацикливанию.
Версия 5.4
Все что внутри каталога переадресуется отлично, а вот на сам каталог переадресация зацикливается. :( версия 5.4
Как исправить?
Например, переадресация
example.net/forum/*/*\?recNum=1000 example.net/forum/*1/*2
работает для
https://example.net/forum/f40/topic_614.html?recNum=1000
но не работает для
https://example.net/forum/f40/topic_614.htm#reply23?recNum=1000
(?recNum=1000 не убирается)
Добавление правил вида
example.net/forum/*/*#*\?recNum=1000 example.net/forum/*1/*2#*3
example.net/forum/*/*\#*\?recNum=1000 example.net/forum/*1/*2#*3
не помогает
Надо так:
https://example.net/forum/f40/topic_614.htm?recNum=1000#reply23
Так работает
Якорь на сервер не передается, поэтому пытаться его обработать в переадресациях бесполезно.