Переадресация на javascript с задержкой. PHP редирект внешних ссылок и скрытие реферальных ссылок. Почему переданный в CURL реферер не видит Яндекс.Метрика и Google Analytics

Примеры редиректов или же перенаправлений на другую страницу.

Редирект в HTML // Обновить страницу через 5 секунд: // Перенаправить на https://www.google.com через 5 секунд: // Перенаправьте на https://www.google.com немедленно: Редирект в JavaScript

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

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

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

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

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

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

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

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

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

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

Подождите пожалуйста 10 сек или перейдите по этой ссылке: https://www.google.com

Редирект в PHP

В php есть функция header() , которая разрешает не только подменять стандартные заголовки, но и добавлять новые.

Синтаксис:

// string - полностью сформированная строка заголовка, который необходимо добавить (без завершающего перевода строки "\n") // replace указывает, нужно ли заменять заголовки с одинаковыми именами (true), или же добавлять в конец (false) // http_response_code указывает код http-ответа (300, 301, 302 и т.д.) void header (string string [, bool replace = true [, int http_response_code]]);

Примеры использования:

Header("Refresh: 0; url=/error404.html"); // переадресовать на страницу ошибки немедленно (без задержки) header("Refresh: 5; url=https://www.google.com/"); // переадресовать на главную страницу Рамблера через 5 секунд после загрузки страницы. header("Location: /", true, 307); // перебросить на главную страницу сайта с использованием 307 редиректа. header("Location: /article/page.htm", true, 303); // с помощью 303 редиректа переадресовать на внутреннюю страницу сайта. header("Location: http://google.ru/search?q=redirect"); // с помощью 302 редиректа переадресовывать на поиск в гугле слова redirect (При использовании Location без указания кода редиректа, по умолчанию используется 302-й). header("Location: http://yandex.ru/yandsearch?text=redirect", true, 301); // сделать переадресацию с помощью 301 редиректа на поиск в Яндексе слова redirect.

Редирект HTML в PHP:

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

Redirect / http://url4trafic.ru

При перенаправлении трафика из социальных сетей в общих случаях наиболее актуален вариант из примера №1, с небольшим дополнением - а именно - с использованием ogp разметки. Чтоб было немного понятней - разметка Open Graph это протокол разметки контента страницы для отправки её содержимого в социальные сети. При публикации ссылки в социальную сеть вы можете «вручную» указать какие картинку-миниатюру и описание отображать.

Работающий пример (возможны неточности и недочёты, но оно таки работает:)

Заголовок страницы

Как это выглядит при публикации вКонакте:

Краткий разбор моментов:
- указывает что будет использоваться разметка Open Graph
- - заполняем заманчивое описание - в примере выше это «Джон Сина назвал дату своего возвращения»
- Заголовок страницы - интригующий заголовок - в примере выше это «Джон Сина возвращается к выступлениям - Новости реслинга WWE»
- - это путь к изображению, которое будет загружаться - в примере выше этот тот самые мужик в синей майке.
Чтобы ссылка получилась красивой и большой - изображение изначально должно быть достаточных размеров. Для вКонтакте например, это больше 537x240 пикселей. Лучше - больше.

Location="http://url4trafic.ru" - это как вы уже догадались url, куда мы будем отправлять пользователя.

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

Вообще говоря, речь пойдёт сейчас об объекте Location , который является свойством объекта Document . У объекта Location есть свойство href , с помощью которого и реализуется редирект на JavaScript . Данное свойство доступно и для чтения, и для записи. Для начала давайте его прочитаем:

Document.write(document.location.href);

В результате Вы увидите полный адрес к Вашему скрипту.

Теперь сделаем простейший редирект на JavaScript :

Document.location.href = "http://сайт";

Таким образом, все пользователи, которые запустят этот скрипт будут автоматически переходить на сайт: "http://сайт ".

Теперь давайте сделаем классическую задачу, которые реализуют очень часто. Допустим, у Вас был сайт: http://a.ru . Затем Вы купили новый домен для Вашего сайта и его адрес стал: http://b.ru . И хотите, чтобы все посетители переходили с http://a.ru на новый http://b.ru . Причём, Вы хотите, чтобы они знали, что у Вашего сайта новый адрес. Знакома ситуация? Так вот, реализуется это с помощью редиректа с задержкой:


var delay = 5000;
setTimeout("document.location.href="http://b.ru"", delay);

У нашего сайта новый адрес: http://b.ru. Через 5 секунд Вы будете перенаправлены на него. Если этого не происходит, то перейдите самостоятельно: http://b.ru

Сначала пользователь увидит сообщение, а через 5 секунд он уже перейдёт по новому адресу. Если вдруг у пользователя отключён JavaScript , то тогда он может перейти самостоятельно, просто щёлкнув по ссылке.

Это особый вид редиректа. Так как он располагается в заголовке html-документа, то страница, на которой он расположен, с одной стороны является полноценной страницей - на най может присутствовать текст, картинки и т.д. А с другой - это редирект, который срабатывает через несколько секунд (или сразу же, если указать задержку в 0 секунд).

Синтаксис:

Первый параметр seconds - это количество секунд (после полной загрузки страницы), по истечении которых произойдет редирект на второй параметр URL-to-redirect .

Как использовать?

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

Текст страницы

Примеры:

Делаем некую промежуточную страницу для формирования счета и уточнения деталей заказа. В этом примере, после полной загрузки страницы, клиент увидит текст, идущий после , а по прошествии 5 секунд автоматически будет перенаправлен на https://merchant.webmoney.ru/ :

Ув. Иванов Иван Иванович!

Сейчас Вы перейдете на мерчант WebMoney для оплаты выбранного лота. Если этого не произошло автоматически, пожалуйста, нажмите перейти.

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

Но учтите, что указывать задержку в 0 сек. не рекомендуется по крайней мере по двум причинам:
  • в случае, если пользователь захочет вернуться на предыдущую страницу, и нажмет соответствующую кнопку в браузере, ему это не удастся: он попадет на страницу с редиректом, и браузер опять перенаправит его вперед.
  • поскольку это полноценная страница, и на ней может присутствовать текст, то поисковики могут увидеть в этом редиректе способ обмануть их: ведь рядовой пользователь этого текста не увидит (он будет немедленно перенаправлен на URL-to-redirect ), в то время как для поисковиков текст доступен.
  • Но в то же время не забывайте, что возможность указать нулевую задержку все же есть.

    Как увеличить зарааботок в партнерской программе

    КАК УВЕЛИЧИТЬ ЗАРАБОТОК В ПАРТНЁРСКОЙ ПРОГРАММЕ

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

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

    Лучший и самый простой способ увеличить Ваш Заработок на партнёрских программах - это предотвратить обрезание "хвостов" на Вашей партнёрской ссылке. (Для тех кто не в курсе, "хвост" - это окончание партнёрской ссылки. Например: партнёрская ссылка: http://www.google.ru/?id=4877, "хвост" этой ссылки - ?id=4877).

    Так вот менталитет рунета таков, что народ просто обрезает "хвосты" партнёрских ссылок и регистрируется в партнёрках по прямым ссылкам сайта.Тем самым в разы снижая заработок партнёров. Чем это вызвано? Для западного человека будет великой загадкой, там о таких "обрезаниях" слыхом не слыхивали. Нам же русским людям всё ясно, как Божий день - дело в таком маленьком зверьке - как Жаба. Всё очень просто, нашего человека душит жаба, что кто-то зарабатывает на нём деньги и если у него появится такая возможность, не дать этому кому-то заработать денег, он обязательно ей воспользуется.

    Поэтому, в обязательном порядке, необходимо защищать свои партнёрские ссылки от подобных посягательств на "хвосты". Как это делается? Очень просто. Рассказываю.

    Вам необходимо завести на своём сайте, для каждой партнёрской ссылки, страничку редиректа. Что такое редирект?

    Это такой скрипт, который изменяет Вашу партнёрскую ссылку до неузнаваемости.

    Теперь о том, как всё это делается на практике. Допустим Ваша партнёрская ссылка: "http://www.google.ru/?id=4877".

    Заводим на сайте страничку редиректа, обзовем её, допустим: "google.htm". На этой страничке будет находиться всего один скрипт и больше ничего. Вот он:







    document.location="http://www.google.ru/?id=4877 ";


    Теперь Ваша партнерская ссылка будет иметь вид: http//www.Ваш домен/google.htm . В моём случае она имела бы вид: http//www..htm. Как видете "хвосты" тут не обрежешь. Даже если посетитель посчитает "google.htm" за "хвост" и обрежет его, то естественно, он ни куда, кроме как на Ваш сайт, не попадёт.

    Вот такой простой и очень эффективный способ защиты Ваших партнёрских ссылок. Конечно есть в интернете для этих целей различные сервисы. Но моё мнение, достаточно скрипта редиректа, во всяком случае мне ни разу не приходилось такими сервисами пользоваться, не было такой нужды.