Редирект — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
 
(не показаны 3 промежуточные версии 1 участника)
Строка 1: Строка 1:
'''Актуально для версии 20'''
+
'''Актуально для версии 20.'''
  
 
В последних версиях системы для создания редиректов существует специальный модуль “Редиректы”, с помощью которого можно за несколько простых шагов создать необходимое вам перенаправление.<br/>
 
В последних версиях системы для создания редиректов существует специальный модуль “Редиректы”, с помощью которого можно за несколько простых шагов создать необходимое вам перенаправление.<br/>
Строка 6: Строка 6:
 
Помимо этого в системе есть предназначенный для той же цели макрос %content redirect('http://www.umi-cms.ru')%. Его можно использовать в шаблонах или непосредственно в контенте определенной страницы.<br />
 
Помимо этого в системе есть предназначенный для той же цели макрос %content redirect('http://www.umi-cms.ru')%. Его можно использовать в шаблонах или непосредственно в контенте определенной страницы.<br />
  
На этом изобилие способов ещё не кончается. Так же мы можем использовать JavaScript или файл дополнительной настройки сервера .htaccess.<br />
+
На этом изобилие способов ещё не кончается. Также мы можем использовать JavaScript или файл дополнительной настройки сервера .htaccess.<br />
 
В первом способе, скрипт для перенаправления может быть записан как минимум четырьмя способами:<br />
 
В первом способе, скрипт для перенаправления может быть записан как минимум четырьмя способами:<br />
 
<source lang="javascript">
 
<source lang="javascript">
Строка 33: Строка 33:
 
#3: RedirectPermanent ^shop$ ^catalog$
 
#3: RedirectPermanent ^shop$ ^catalog$
 
</source>
 
</source>
Разделителем здесь является пробел, принцип старый: первое значение - откуда, второе - куда.
+
Разделителем здесь является пробел, принцип старый: первое значение откуда, второе куда.
  
 
Если нужно добавить перенаправление, чтобы убирался слэш на конце адреса страницы, то для решения задачи нужно вставить такой код в файл /.htaccess в корне сайта после строчки "RewriteEngine On":
 
Если нужно добавить перенаправление, чтобы убирался слэш на конце адреса страницы, то для решения задачи нужно вставить такой код в файл /.htaccess в корне сайта после строчки "RewriteEngine On":
Строка 46: Строка 46:
  
  
[[Категория:Вопросы и уроки разработки сайтов на UMI.CMS]]
+
[[Категория:Вопросы и уроки разработки сайтов на UMI.CMS]][[category:Модуль Редиректы]]

Текущая версия на 14:12, 22 марта 2019

Актуально для версии 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. Все страницы, кроме админки, будут перенаправляться на адрес без слэша. Админка с перенаправлением не будет работать.