Редирект

Материал из Umicms
Перейти к:навигация, поиск

Актуально для версии 20.

В последних версиях системы для создания редиректов существует специальный модуль “Редиректы”, с помощью которого можно за несколько простых шагов создать необходимое вам перенаправление.
Подробнее о работе с этим модулем вы можете почитать в нашей документации.

Помимо этого в системе есть предназначенный для той же цели макрос %content redirect('http://www.umi-cms.ru')%. Его можно использовать в шаблонах или непосредственно в контенте определенной страницы.

На этом изобилие способов ещё не кончается. Также мы можем использовать JavaScript или файл дополнительной настройки сервера .htaccess.
В первом способе, скрипт для перенаправления может быть записан как минимум четырьмя способами:

#1:
<script type="text/javascript">
    location="http://www.newdomain.com";
</script>
#2:
<script type="text/javascript">
    document.location.href="http://www.newdomain.com";
</script>
#3:
<script type="text/javascript">
    window.location.reload("http://www.newdomain.com");
</script>
#4:
<script type="text/javascript">
    document.location.replace("http://www.newdomain.com");
</script>

Есть множество способов реализации второго способа, самые простые из них:

#1: RewriteRule / shop [R=301] 
#2: Redirect 301 ^index.html$ /
#3: RedirectPermanent ^shop$ ^catalog$

Разделителем здесь является пробел, принцип старый: первое значение — откуда, второе — куда.

Если нужно добавить перенаправление, чтобы убирался слэш на конце адреса страницы, то для решения задачи нужно вставить такой код в файл /.htaccess в корне сайта после строчки "RewriteEngine On":

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/admin/.*
RewriteRule ^(.*)/$ /$1 [L,R=301]

и выключить опцию url-suffix.add в файле config.ini. Все страницы, кроме админки, будут перенаправляться на адрес без слэша. Админка с перенаправлением не будет работать.