Переадресация веб-страниц с помощью javascript

Переадресация в php

В php все также используется location и вписывается он в заголовок, как и в предыдущем варианте. Выглядит это следующим образом:

После отработки строки, браузеру возвратиться трехзначный код состояния редиректа. Если в атрибутах header-а не указан тип переадресации, т.е. код 201 или 3**, то автоматически возвращается 302, который сообщает о временном перемещении.

Хочу отметить важную деталь. На сегодняшний день все уважающие себя разработчики используют редирект 301. Он позволяет:

  • Осуществлять суммирование важных показателей веб-сервисов, вследствие чего даже при перемещении на новый адрес сайт не теряет своих позиций в поисковых системах;
  • Производить склейку доменных имен с тройным «www» и без него;
  • Перенаправлять роботов и пользователей на новые функционирующие веб-страницы, вместо устаревших.

ИЗОБРАЖЕНИЯ

Слайд шоуГалерея слайд шоуМодальное изображениеЛайтбоксОтзывчивая сетка изображенийСетка изображенийГалерея вкладокЭффект наведения на изображениеНаложение слайда на изображениеНаложение на изображениеНаложение заголовка на изображениеНаложение иконки на изображениеЭффект к изображениюЧерно-белое изображениеТекст на изображенииИзображение с текстовым блокомИзображение c прозрачным текстомИзображение на всю страницуФорма на изображенииИзображение герояРазмытое фоновое изображениеФоновое изображениеВыравненные изображенияОкругленные изображенияИзображение аватарОтзывчивое изображениеИзображение по центруМинитюрное изображениеЗнакомство с командойЛипкое изображениеЗеркальное изображениеДрожание изображенияГалерея портфолиоПортфолио фильтрЗум изображенияЛупа изображенияПолзунок сравнения

Как с помощью document.location.href реализовать redirect?

Итак, document.location.href содержит в себе полный путь к страницам веб-сервиса. Если вы сейчас в любом онлайн-редакторе запустите строку document.write (document.location.href), то в ответе получите полную ссылку на вкладку, в которой это написали.

Для того чтобы реализовать редирект, нужно просто этому свойству присвоить другой адрес.

Я решил привести пример на конкретном задании, которое часто можно встретить среди тасков в реальных проектах.

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Переадресация</title>
  <script>
  var delay = 6000;
  setTimeout("document.location.href='http://ddd.ru'", delay);
</script>
 </head> 
 <body>
<h1>Теперь сайт компании "****" располагается на новом адресе: <b>http://ddd.ru</b>. 
Через 6 секунд Вас автоматически перенаправит на него. Если переход не произошел автоматически, то перейдите по указанной ссылке:
<a href='http://ddd.ru'>http://ddd.ru</a>
</h1>
 </body>
</html>

В качестве небольшого бонуса я решил прикрепить еще один пример кода, по которому очень часто задают вопросы. Иногда возникают и другие ситуации, когда вместе с перенаправлением нужно передать некоторые данный на открываемую страницу через метод отправки POST. Такой механизм также можно реализовать через js.

Для отправки какой-либо информации в html-разметке используется тег <form>.

Теперь с помощью функции, написанной на JavaScript, совершается отправка данных:

1
2
3
4
<script>
$('document').ready(function() {
 $('#newSite ').submit(); });
</script>

Я рассказал вам, как реализовывать переадресацию, используя средства языка js. А теперь перейдем к разбору такого же механизма, но в других языках программирования.

МЕНЮ

Панель иконокЗначок менюАккордеонВкладкиВертикальные вкладкиЗаголовки вкладокВкладки полностраничныеВкладки при наведенииВерхняя навигацияОтзывчивый верхний навигаторНавигация с иконкамиМеню поискаСтрока поискаФиксированная боковая панельАнимированные боковые панелиОтзывчивая боковая панельПолноэкранная навигация наложенияМеню Off-CanvasБоковые кнопки навигацииБоковая панель с иконкамиМеню с горизонтальной прокруткойВертикальное менюНижняя навигацияОтзывчивая нижняя навигацияГраницы навигацииМеню по правому краюСсылка меню по центруМеню равной шириныФиксированное менюСкольжение вниз по полосе прокруткиСкрыть меню при прокруткеУменьшить меню при прокруткеЛипкая навигацияНавигация на изображенияВыпадающее менюВыпадающий при кликеВыпадающее меню в навигацииВыпадающий список в боковой навигацииОтзывчивая навигация с выпадающимПодменю навигацияВсплывающее менюМега менюМобильное менюМеню занавесСвернуть боковой барСвернуть боковую панельПагинацияХлебные крошкиГруппа кнопокГруппа вертикальных кнопокЛипкий социальный барНавигация таблеткиОтзывчивый заголовок

Редирект в JavaScript

Метод позволяет заменить одну страницу другой таким образом, что это замещение не будет отражено в истории просмотра HTML-страниц (history) браузера

location.replace("https://www.google.com");
document.location.replace("https://www.google.com");

Метод полностью моделирует поведение браузера при нажатии на кнопку в панели инструментов. Если вызывать метод без аргумента или указать его равным , то браузер проверит время последней модификации документа и загрузит его либо из кеша (если документ не был модифицирован), либо с сервера.
Такое поведение соответствует нажатию на кнопку . Если в качестве аргумента указать , то браузер перезагрузит текущий документ с сервера. Такое поведение соответствует одновременному нажатию на и кнопки клавиатуры .

window.location.reload("https://www.google.com");

Следующие примеры тоже перенаправят на google:

location="https://www.google.com";
document.location.href="https://www.google.com";

С помощью функции возможно реализовать задержку переадресации перед выполнением редиректа (в примере — 5 секунд):

setTimeout( 'location="https://www.google.com";', 5000 );

Простой пример редиректа с таймером:

<script type="text/javascript">
var sec=10;
 function Sec()
 {
  document.getElementById("sec").innerHTML=sec;
   sec--;
   if(sec==1)
   {
   	  location.replace("https://www.google.com")
   }
   setTimeout('Sec()',1000);
 }

 Sec();
</script>
<p>Подождите пожалуйста <span style="color:red;font-weight: bold;" id="sec" name="sec">10</span> сек или перейдите по этой ссылке: <a href="https://www.google.com">https://www.google.com</a></p>

More

Fullscreen VideoModal BoxesDelete ModalTimelineScroll IndicatorProgress BarsSkill BarRange SlidersTooltipsDisplay Element HoverPopupsCollapsibleCalendarHTML IncludesTo Do ListLoadersStar RatingUser RatingOverlay EffectContact ChipsCardsFlip CardProfile CardProduct CardAlertsCalloutNotesLabelsCirclesStyle HRCouponList GroupList Without BulletsResponsive TextCutout TextGlowing TextFixed FooterSticky ElementEqual HeightClearfixResponsive FloatsSnackbarFullscreen WindowScroll DrawingSmooth ScrollGradient Bg ScrollSticky HeaderShrink Header on ScrollPricing TableParallaxAspect RatioResponsive IframesToggle Like/DislikeToggle Hide/ShowToggle Dark ModeToggle TextToggle ClassAdd ClassRemove ClassActive ClassTree ViewRemove PropertyOffline DetectionFind Hidden ElementRedirect WebpageZoom HoverFlip BoxCenter VerticallyCenter Button in DIVTransition on HoverArrowsShapesDownload LinkFull Height ElementBrowser WindowCustom ScrollbarHide ScrollbarDevice LookContenteditable BorderPlaceholder ColorText Selection ColorBullet ColorVertical LineDividersAnimate IconsCountdown TimerTypewriterComing Soon PageChat MessagesPopup Chat WindowSplit ScreenTestimonialsSection CounterQuotes SlideshowClosable List ItemsTypical Device BreakpointsDraggable HTML ElementJS Media QueriesSyntax HighlighterJS AnimationsGet Iframe Elements

Что такое редирект?

Редирект — это способ перенаправить пользователей и поисковых систем на другой URL отличный от того, который они первоначально запросили. Ниже приведены описания некоторых из наиболее часто используемых видов перенаправления.

301 Moved Permanently

301 редирект является постоянным редиректом, который передает около 90-99% ссылочного веса. Данный редирект указывает, что страница перемещена по новому адресу и старый url следует считать устаревшим.

302 Found (HTTP 1.1) / Moved Temporarily (HTTP 1.0)

302 редирект – временный редирект. Данный редирект передает 0% от ссылочного веса и, в большинстве случаев, не должен использоваться. На данный момент интернет работает по протоколу HTTP, который и определяет, как обрабатывать URL-адреса. В двух версиях этого протокола этот ответ сервера имеет разный статус ответа:

— HTTP 1.0: 302 ответ сервера это «Moved Temporarily » – текущий документ временно перемещен на другой URL.

— HTTP 1.1: произошло изменение ответа сервера на «Found» – текущий документ найден.

307 Moved Temporarily (HTTP 1.1 Only)

307 редирект в протоколе HTTP 1.1 стал приемником 302 редиректа. В то время, как основные поисковые боты, начнут рассматривать его как аналог 302, для почти всех случаев лучше всего использовать 301. Исключением из этого правила является, когда контент действительно переехал только временно (например, во время технического обслуживания) и поисковые системы уже понимают, что ваш сервер совместим с HTTP 1.1. Но, так как это практически невозможно определить, действительно ли поисковые системы поняли, что ваш сервер совместим с этим новым протоколом, то лучше использовать 302 редирект для контента, который был временно перемещен.

Другие виды редиректов

Существуют также и другие виды редиректов: Meta Refresh или с помощью JavaScript – которые выполняются на уровне страницы, а не на уровне сервера. Вот как выглядит типичный редирект Meta Refresh:

Но, данные редиректы желательно использовать крайне редко, так как ими очень любят злоупотреблять спамеры и дорвейщики. Кроме этого, при использовании этих редиректов ссылочный вес почти не передается.
Примеры использования

Images

SlideshowSlideshow GalleryModal ImagesLightboxResponsive Image GridImage GridTab GalleryImage Overlay FadeImage Overlay SlideImage Overlay ZoomImage Overlay TitleImage Overlay IconImage EffectsBlack and White ImageImage TextImage Text BlocksTransparent Image TextFull Page ImageForm on ImageHero ImageBlur Background ImageChange Bg on ScrollSide-by-Side ImagesRounded ImagesAvatar ImagesResponsive ImagesCenter ImagesThumbnailsBorder Around ImageMeet the TeamSticky ImageFlip an ImageShake an ImagePortfolio GalleryPortfolio with FilteringImage ZoomImage Magnifier GlassImage Comparison Slider

Коды для вставки

Чтобы вы не тупили на тему, как настроить 301 редирект, можете использовать эти коды.

С одной страницы на другую

Самый частый случай — это именно редирект с одной страницы на другую. Редиректы с без www на домен с www и так далее я даже не настраиваю, так как большинство моих сайтов сделаны на движке WordPress, а там все эти редиректы настроены по умолчанию. А вот переадресация страницы — это то, что мне бывает частенько нужно. Вот как прописать 301 редирект таким образом:

Redirect 301 /was.php http://www.site.ru/new.php

Новый адрес нужно обязательно указывать с http и доменным именем. Где was.php — там адрес старой страницы, соответственно вместо www.site.ru/new.php также прописывайте свой вариант.

С www на без www

Обычно редирект используют для перемещения на сайт без www, и я думаю это правильно — лишняя приписка не нужна. Для нового сайта рекомендую перемещение на вариант без www, а для старого главным зеркалом нужно указывать тот вариант, который уже находится в индексе поисковой системы.

Как провести редирект с www на без www:

RewriteCond %{HTTP_HOST} ^www.site\.ru$ 
RewriteRule ^(.*)$ http://site.ru/$1 

С без www на www

Если планируется редирект с без www на www, используется другой код:

RewriteCond %{HTTP_HOST} ^site\.ru$ 
RewriteRule ^(.*)$ http://www.site.ru/$1 

С одного домена на другой

Вот как делается редирект на другой сайт:

RewriteCond %{HTTP_HOST} ^old-site\.ru$ 
RewriteRule ^(.*)$ http://www.site.ru/$1 

Редирект с одного домена на другой полезен, например, при переезде сайта на новый домен.

С https на http

Как сделать редирект на http:

RewriteCond %{HTTPS} "on"
RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} 

С http на https

Как сделать 301 редирект на https:

RewriteCond %{SERVER_PORT} ^80$ 
RewriteCond %{HTTP} =on
RewriteRule ^(.*)$ https://domain.ru/$1 

Со страниц со слешем / на конце на страницы без слеша

Некоторые месье любят извращения, и хотят с уже нормально работающих и располагающихся в индексе страниц со слешем на конце настроить редирект на страницы без слеша.

RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !$
RewriteRule ^(.*)\/$ /$1 

Со страниц без слеша на конце на страницы со слешем

Переадресация 301 на страницы со слешем на конце:

RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !\/$
RewriteRule ^(.*)$ /$1/ 

Убираем index.php

Если у нас страница site.ru/index.php отдает код 200 ОК, то нужно её убрать нахрен. И проставить 301 редирект с index.php на корень:

RewriteCond %{REQUEST_URI} /index.php
RewriteCond %{QUERY_STRING} ^\z
RewriteRule ^(.*)$ http://site.ru/? 

ФОРМЫ

Форма входаФорма регистрацииФорма оформления заказаКонтактная формаФорма входа в соц сетиРегистрацияФорма с иконкамиРассылка по почтеСложенная формаАдаптивная формаФорма всплывающаяФорма линейнаяОчистить поле вводаКопирование текста в буфер обменаАнимированный поискКнопка поискаПолноэкранный поискПоле ввода в менюФорма входа в менюПользовательский флажок/радиоПользовательский выборТумблер перключательУстановить флажокОпределить Caps LockКнопка запуска на EnterПроверка пароляПереключение видимости пароляМногоступенчатая формаФункция автозаполнения

Директива .htaccess

Вот мы плавно подошли к важной, очень полезной, но и сложной директиве .htaccess. Она представляет из себя документ с конфигурациями для Apache и аналогичных серверов

Ее действие распространяется только на тот каталог, в котором она расположена. Также возможности действуют и на подкаталоги.

Такую команду необходимо вставить в файл .htaccess, созданный в корневой папке проекта. Ею мы указываем, что при обращении к ссылке http://old.html будет вызван редирект на адрес http://www.new.html и при этом код 301 сообщает, что это перемещение уже зафиксировано (постоянное).

На этом пора прощаться. Не забывайте подписываться на мои обновления. Пока-пока!

Прочитано: 129 раз

Редирект через.htaccess

Напомню, что .htaccess
— это специальный файл, который лежит в корневой папке вашего сайта. В нем прописываются все необходимые редиректы. Таким образом уже на уровне веб-сервера происходит переход на нужную страницу без загрузки промежуточных.

В общем виде редирект через файл.htaccess выглядит так:

  • КОД_РЕДИРЕКТА
    — здесь указывается номер редиректа (можно не указывать, по умолчанию стоит 301);
  • /АДРЕС_ОТКУДА
    — страница, с которой будет осуществлен переход. Обязательно должна начинаться со слэша «/»;
  • АДРЕС_КУДА
    — указываем полный адрес (URL) куда будет осуществлена переадресация;

1) Редирект с www и без www

301 редирект с сайта без www на страницу сайта с www.

В данном случае будет автоматически переход с любой страница site.ru
на www.site.ru
соотвественно. Например

Для обратного редиректа с www на без www (www.site.ru -> site.ru) необходимо прописать следующий код:

2) Переадресация пользователя на другой домен

3) Переадресация пользователя со страницы на другой адрес

4) Редирект при смене домена сайта (URL)

Иногда нужно сделать полную переадресацию с одного сайта на другой (например, сменился домен сайт). В этом случае необходимо написать следующие четыре строчки:

5) Редирект с http://site/yyyy/mm/dd/post/ на http://site/post/

Такой редирект будет полезен для владельцев блогов на WordPress. Указание года, месяца и числа публикации новости вовсе необязательно и создает лишнюю иерархию, которая мешает продвижению блога. Поэтому нужно использовать следующий код:

Например, с адреса http://site/2014/11/24/primerposta/
будет 301 редирект на http://site/primerposta/
.

Примеры использования файла .htaccess

1. Перенаправление доменов c синонима сайта на основной домен с кодом 301

Перенаправить запросы на domain.ru с любого из синонимов сайта

Перенаправить запросы на www.domain.ru с любого из синонимов сайта

Эти правила рекомендуется размещать в самом начале файла .htaccess.

2. Постоянное перенаправление с кодом 301

Если вы изменили адрес страницы сайта, добавьте в .htaccess следующие строки, чтобы запросы со старого адреса переадресовывались на новый

где:

  • page.html — адрес старой страницы относительно корня сайта;
  • www.domain.ru — имя сайта;
  • new_page.html — адрес страницы, на которую нужно выполнить перенаправление.

Подобное правило не сработает для перенаправления с адресов, содержащих Query String (символы после ?). Для запросов, содержащих QUERY_STRING, можно использовать сочетание RewriteCond и RewriteRule.

Например, для перенаправления всех запросов к странице /period/?test=123 вашего сайта на domain.ru, вы можете написать:

3. Переопределение страниц ошибок

При помощи файла .htaccess вы можете установить свои страницы ошибок:

Соответствующие файлы страниц ошибок (401.html, 404.html и др.) необходимо разместить в каталоге ~/ваш_домен/docs/errors.

Для того чтобы при случайном упоминании прямых ссылок на такие страницы они не проиндексировались в поисковых системах, рекомендуется:

a) в файле ~/ваш_домен/docs/robots.txt прописать

b) создать файл ~/ваш_домен/docs/errors/.htaccess, в котором прописать

4. Постраничное перенаправление запросов на другой домен c кодом 301

Следующий код перенаправит все запросы к страницам вашего сайта на аналогичные страницы другого сайта, например, запрос http://domain.ru/main будет переадресован на http://www.newdomain.ru/main:

либо

5. Ограничение доступа к сайту по IP

Запретить доступ к сайту с IP-адресов 123.4.5.6 и 123.5.4.3

Запретить доступ к сайту со всех адресов кроме 123.4.5.6 и 123.5.4.3:

Запретить доступ к сайту для всех:

6. Переопределение главной страницы сайта (индексного файла каталога)

Сделать главной страницей файл menu.html:

7. Включение обработки PHP в .html-файлах

8. Запрет выдачи листинга каталога

В случае отсутствия в папке главной страницы (индексного файла), при обращении без указания конкретного имени файла в запросе будет выдан список всех файлов, находящихся в каталоге. Для того чтобы запретить отображение листинга каталога, добавьте в файл .htaccess строку:

9. Включить выполнение CGI-скриптов в папке docs для файлов с расширениями .cgi, .pl. .py

В папке c CGI-скриптами необходимо разместить файл .htaccess с содержимым:

Скрипт должен иметь атрибут исполнения (+x, права доступа, начинающиеся с 7, например, 755).

Атрибуты (права доступа) можно изменить с помощью файлового менеджера панели управления, при помощи вашего FTP-клиента или по SSH. Также в разделе Веб-серверУправление модулями должен быть включен модуль CGI.

10. Блокировка переходов со сторонних ресурсов

Для запрета перехода c baddomain.ru на domain.ru добавьте в .htaccess следующее:

Если требуется запретить переходы с нескольких доменов, то используйте следующие директивы

11. Особенности использования кириллических доменов (.РФ, .МОСКВА и др.)

В файле .htaccess использование кириллицы не допускается. При составлении правил перенаправления для кириллических доменов необходимо указывать имя домена в punycode. Узнать имя домена в punycode можно с помощью сервиса Whois.

Например, для перенаправления site.ru на caйт.рф нужно воспользоваться следующим правилом:

В этом случае ваши посетители могут увидеть именно punycode-представление доменного имени в адресной строке браузера. Это не является ошибкой.

12. Перенаправление с HTTP на HTTPS и обратно

Перенаправить запросы на https://domain.ru

Перенаправить запросы на http://domain.ru

3. Диагностика ошибок

Если после редактирования или размещения .htaccess при обращении к сайту вы получили ошибку 500, то, скорее всего, в файле .htaccess допущена ошибка. Посмотреть её причины вы можете в лог-файле /var/log/ваш_домен.error_log.

Как работает перенаправление страниц?

Реализации перенаправления страниц заключаются в следующем.

Пример 1

Сделать переадресацию страницы с помощью JavaScript на стороне клиента довольно просто. Чтобы перенаправить посетителей вашего сайта на новую страницу, вам просто нужно добавить строку в свой раздел главы следующим образом.

<html>
   <head>
     
      <script type="text/javascript">
         <!--
            function Redirect() {
               window.location="https://maxfad.ru";
            }
         //-->
      </script>
     
   </head>
  
   <body>
      <p>Click the following button, you will be redirected to home page.</p>
     
      <form>
         <input type="button" value="Redirect Me" onclick="Redirect();" />
      </form>
     
   </body>
</html>

Пример 2

Вы можете показать соответствующее сообщение посетителям вашего сайта, прежде чем перенаправить их на новую страницу. Для загрузки новой страницы потребуется небольшая временная задержка. В следующем примере показано, как реализовать то же самое. Здесь — встроенная функция JavaScript, которая может использоваться для выполнения другой функции после заданного интервала времени.

<html>
   <head>
  
      <script type="text/javascript">
         <!--
            function Redirect() {
               window.location="https://maxfad.ru";
            }
           
            document.write("You will be redirected to main page in 10 sec.");
            setTimeout('Redirect()', 10000);
         //-->
      </script>
     
   </head>
  
   <body>
   </body>
</html>

РезультатПример 3

В следующем примере показано, как перенаправить посетителей вашего сайта на другую страницу на основе их браузеров.

<html>
   <head>
  
      <script type="text/javascript">
         <!--
            var browsername=navigator.appName;
            if( browsername == "Netscape" )
            {
               window.location="https://maxfad.ru";
            }
            else if ( browsername =="Microsoft Internet Explorer")
            {
               window.location="https://maxfad.ru";
            }
            else
            {
               window.location="https://maxfad.ru";
            }
         //-->
      </script>
     
   </head>
  
   <body>
   </body>
</html>

Новые статьи

  • JS База данных — фильтрация записей. Часть 2 — 15/12/2019 05:21
  • JavaScript — Совместимость с браузерами — 08/09/2018 15:52
  • JavaScript — Карта изображений — 08/09/2018 15:52
  • JavaScript — отладка — 08/09/2018 15:51
  • JavaScript — Мультимедиа — 08/09/2018 15:51
  • JavaScript — анимация — 08/09/2018 15:50
  • JavaScript — подтверждение формы — 08/09/2018 15:50
  • JavaScript — Обработка ошибок и исключений — 08/09/2018 15:49
  • JavaScript — Объектная модель документа или DOM — 08/09/2018 15:49
  • JavaScript — Регулярные выражения и объект RegExp — 08/09/2018 15:48
  • JavaScript — объект Math — 08/09/2018 15:48
  • JavaScript — объект Date — 08/09/2018 15:48
  • JavaScript — объект Array — 08/09/2018 15:47
  • JavaScript — объект Strings — 08/09/2018 15:47
  • JavaScript — логические объекты — 08/09/2018 15:46
  • JavaScript — Числовые объекты — 08/09/2018 15:46
  • JavaScript — Обзор объектов — 08/09/2018 15:45
  • JavaScript — Печать страницы — 08/09/2018 15:45
  • JavaScript — Void — 08/09/2018 15:45
  • JavaScript — диалоговые окна — 08/09/2018 15:44

Предыдущие статьи

  • JavaScript и Cookies — 08/09/2018 15:43
  • JavaScript — События — 08/09/2018 15:43
  • JavaScript — функции — 08/09/2018 15:42
  • JavaScript — управление циклом — 08/09/2018 15:41
  • JavaScript — цикл for … in — 08/09/2018 15:41
  • JavaScript — For цикл — 08/09/2018 15:40
  • JavaScript — циклы — 08/09/2018 15:40
  • JavaScript — switch-case — 08/09/2018 15:39
  • JavaScript — if … else — 08/09/2018 15:39
  • JavaScript — Операторы — 08/09/2018 15:38
  • JavaScript — переменные — 08/09/2018 15:38
  • JavaScript — размещение в файле HTML — 08/09/2018 15:37
  • Включение JavaScript в браузерах — 08/09/2018 15:36
  • JavaScript — Синтаксис — 08/09/2018 15:34
  • JavaScript — Обзор — 08/09/2018 15:31
  • Учебник Javascript — 08/09/2018 15:29

Что такое 301 редирект?

Редирект 301 (Permanent Redirect) – это перенаправление, которое направляет посетителя с одного адреса на другой, при этом первый адрес отдает код ответа сервера 301. То есть если со страницы znet.ru/zelenyj-slonik стоит 301 редирект на страницу znet.ru/green-elefant, то пользователь, зашедший на первую страницу, даже не увидит ничего с ней, а попадет сразу на вторую страницу, и в адресной строке у него будет адрес именно второй страницы. А старая страница будет отдавать код ответа сервера 301.

Также бывают и другие редиректы, например 302 и 303 редирект. Вот чем они отличаются:

  1. Permanent Redirect (301) означает, что страница перенесена навсегда, на постоянной основе;
  2. Temporary Redirect (302, 303 и некоторые другие) означает, что страница перенесена временно.

Перенаправление веб страницы

Существует несколько способов перенаправления на другую веб-страницу с помощью JavaScript. Наиболее популярными из них являются и :

Пример

// Имитация щелчка мыши:window.location.href = «http://schoolsw3.com»;// Имитировать HTTP перенаправление:window.location.replace(«http://schoolsw3.com»);

Примечание: Разница между href и replace заключается в том, что удаляет URL адрес текущего документа из журнала документов, что означает невозможность использования кнопки «Назад» для перехода к исходному документу.

Совет: Для получения дополнительной информации о местоположении объекта, прочитайте наш справочник Объект location.

Usage

/**
* jQuery Redirect
* @param {string} url - Url of the redirection
* @param {Object} values - (optional) An object with the data to send. If not present will look for values as QueryString in the target url.
* @param {string} method - (optional) The HTTP verb can be GET or POST (defaults to POST)
* @param {string} target - (optional) The target of the form. If you set "_blank" will open the url in a new window.
* @param {boolean} traditional - (optional) This provides the same function as jquery's ajax function. The brackets are omitted on the field name if its an array.  This allows arrays to work with MVC.net among others.
* @param {boolean} redirectTop - (optional) If its called from a iframe, force to navigate the top window. 
*/
$.redirect(url, values, method, target, traditional, redirectTop)

/**
* jQuery Redirect
* @param {string} opts - Options object
* @param {string} opts.url - Url of the redirection
* @param {Object} opts.values - (optional) An object with the data to send. If not present will look for values as QueryString in the target url.
* @param {string} opts.method - (optional) The HTTP verb can be GET or POST (defaults to POST)
* @param {string} opts.target - (optional) The target of the form. "_blank" will open the url in a new window.
* @param {boolean} opts.traditional - (optional) This provides the same function as jquery's ajax function. The brackets are omitted on the field name if its an array.  This allows arrays to work with MVC.net among others.
* @param {boolean} opts.redirectTop - (optional) If its called from a iframe, force to navigate the top window. 
*/
$.redirect(opts)
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector