Гаджеты

Redirect задержкой. PHP редирект внешних ссылок и скрытие реферальных ссылок. Скрипт php редиректа с задержкой и таймером обратного отсчета

Здесь вы можете скачать бесплатно скрипт для массового управления редиректом ссылок. В комплекте со скриптом вы получите подробную инструкцию на русском языке.

Зачем нужен скрипт сокращения и редиректа ссылок?

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

Во-первых , вы сокращаете длину партнерской ссылки — как правило, партнерские ссылки длинные.

Во-вторых , вы скрываете источник перехода — после сокращения, ссылка будет с названием вашего домена.

И самое главное — вы защищаете свою работу!

Как скрипт редиректа ссылок защищает ваш труд?
  • товар снимается с продажи;
  • меняется внешний вид ссылки;
  • закрывается партнерская программа.

Во всех этих случаях ваш труд исчезает — ссылки перестают работать.

А используя скрипт для редиректа ссылок вы буквально за минуту можете перенаправить трафик на любой сайт. Заменяете в скрипте источник перехода ссылки (что требует от вас меньше 1 минуты времени) и все ссылки в ранее опубликованных материалах уже ведут в нужное для Вас место.

Вы можете сказать — а как же сервисы сокращения ссылок ?

У сервиса есть также огромный недостаток, о чем читаем ниже.

Сервисы сокращения ссылок

В настоящее время существует множество сервисов для сокращения ссылок. Но у онлайновых сервисов есть большой недостаток. Сокращая ссылку при помощи онлайнововых сервисов, Вы попадаете в зависимость от их работоспособности. Перестал работать сервис — значит перестали работать и все ваши ссылки.

ВЫВОД : Такие сервисы можно использовать только для кратковременных акций (доски объявлений, рекламные рассылки и т.д.).

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

Скачать скрипт редиректа бесплатно

Исходя из сказанного выше, свой скрипт редиректа нужен всем участникам партнерских программ. У нас вы можете скачать PHP скрипт для редиректа ссылок совершенно бесплатно — достаточно сделать простую рекомендацию. База ваших ссылок храниться в текстовом файле и не требует MySQL.

Внимание : ваш хостинг должен поддерживать работу PHP и.HTACCESS

Другие скрипты для редиректа ссылок

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

Дополнительная информация

Источник : .
Джон Доу.
Формат: PHP.
Дополнительно: бесплатно .
Размер: 1,01 МБ.

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

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

Методы переадресации JavaScript

В JavaScript window location или объект location используется, чтобы получить информацию о местоположении текущей веб-страницы (документа ), а также для его изменения. Ниже приведен список способов, которые могут быть использованы для реализации переадресации JavaScript :

//Устанавливает новое местоположение текущего окна. window.location = "http://www.example.com"; //Устанавливает новую гиперссылку (URL) для текущего окна. window.location.href = "http://www.example.com"; // Присваивает новый URL текущему окну. window.location.assign("http://www.example.com"); //Заменяет положение текущего окна на новое. window.location.replace("http://www.example.com"); //Задает местоположение самого текущего окна. self.location = "http://www.example.com"; // Задает положение самого верхнего окна относительно текущего. top.location = "http://www.example.com";

Хотя приведенные выше строки JavaScript кода выполняют схожую работу, у них есть небольшие отличия. Например, если вы используете перенаправление top.location внутри элемента iframe , то это принудительно перенаправит на главное окно. Еще один момент, о котором стоит помнить: location.replace() заменяет текущий документ, удаляя его из истории и делая его недоступным с помощью кнопки «Назад » в браузере.

window.location.href = "http://www.example.com";

Также вы можете зайти на эту страницу, чтобы подробнее узнать, как работает window.location .

Переадресация JavaScript: перенаправление при загрузке

Чтобы перенаправить пользователя на другой веб-сайт сразу же после открытия вашего сайта, можно использовать следующий код вверху вашей страницы, внутри элемента . Или, если вы используете отдельный .js файл , поместите следующий код в этот файл и не забудьте сослаться на него в заголовке вашей страницы:

window.location.href = "http://www.example.com";

Просто замените URL-адрес из примера на тот адрес, куда вы хотите перенаправлять. Следует отметить, что при этом виде переадресации, посетители вообще не увидят вашу веб-страницу и будут моментально перенаправлены на целевой адрес.

Переадресация JavaScript: перенаправление после определенного периода времени

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

setTimeout(function() { window.location.href = "http://www.example.com"; }, 3000);

Функция JavaScript location href , приведенная выше, перенаправит пользователя со страницы через 3 секунды после полной загрузки. Вы можете изменить значение 3000 (3 x 1000 в миллисекундах ) на свое усмотрение.

Переадресация JavaScript: перенаправление со страницы после события или действия пользователя

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

// Проверяем, верно ли условие, и затем перенаправляем. if (...) { window.location.href = "http://www.example.com"; }

Приведенный выше код JavaScript document location href выполнит перенаправление, если условие верно:

// событие onclick присвоено элементу #button. document.getElementById("button").onclick = function() { window.location.href = "http://www.example.com"; };

Приведенный выше код выполнит перенаправление, когда пользователь нажмет на элемент #button .

Так работает переадресация в JavaScript . Надеемся, эти примеры помогут вам в организации переадресации веб-страниц.

Типы редиректов

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

Редирект через htaccess - самый популярный, и довольно простой способ. Чтобы его сделать, вам понадобится создать в папке сайта файл с названием.htaccess (обратите внимание, что название файла начинается с точки, это не опечатка). Если вы используете CMS WordPress или Joomla, то скорее всего этот файл у вас уже есть, в этом случае вам нужно будет просто отредактировать его.
Читайте ниже чтобы узнать какие именно инструкции в нем нужно прописать, чтобы создать перенаправление.

Редирект при помощи PHP - подойдет в том случае, если вы разбираетесь в PHP и знаете структуру своего сайта. Этот вариант подойдет вам, если ваш сайт написан не на CMS. В ином случае лучше используйте редирект через htaccess.

Редирект HTML - если у вас простой HTML сайт и вам нужно сделать перенаправление для одной страницы - это самый простой вариант. Сделать перенаправление для всего сайта этим способом будет трудозатратно, особенно если у вас на сайте больше 10 страниц.

Редирект при помощи JavaScript - этот способ подойдет также в том случае, если у вас простой сайт, либо если нужно сделать редирект для одной - двух страниц, либо для всего сайта в целом.

Редирект при помощи.htaccess файла

Инструкции, которые вы увидите ниже, нужно прописать в файл.htaccess в самое начало.

  • Редирект всего сайта (всех страниц) на другой сайт

    Redirect / http://new-site.ru/

    В этом примере, перенаправление будет происходить на сайт new-site.ru

  • Редирект одной страницы на другую

    Redirect /page-1.html /page-2.html

    В этом примере, перенаправление будет происходить со страницы page-1.html на страницу page-2.html. Обе страницы должны располагаться на одном домене.
    Этот вариант подходит для замены старых страниц сайта на новые.

  • 310 редирект с www на без www

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

    В этом примере, посетители будут перенаправляться с http://www.example.ru на http://example.ru.

  • 310 редирект с одной страницы на другую

    Redirect 301 /blog/page-1.html http://example.com/page-2.htm

    В этом примере, посетители будут перенаправляться со страницы blog/page-1.html на example.com/page-2.htm .

  • Редирект ошибки 404

    ErrorDocument 404 /index.html

    Пропишите эту строку в.htaccess файле, и тогда все посетители, которым встретится ошибка 404, будут перенаправлены на index.html .

  • Редирект с HTTP на HTTPS

    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

    Пропишите эту строку в.htaccess файле, и тогда все посетители вошедшие на сайт по протоколу HTTP будут перенаправляться на защищенный протокол HTTPS.

    Если вы прописываете редирект для WordPress , то обратите внимание на то, что в файле уже есть строка RewriteEngine On. Поэтому сразу под ней вам нужно добавить такие строки

    RewriteCond %{SERVER_PORT} 80
    RewriteRule ^(.*)$ https://www.domain.com/$1

  • PHP редирект

    В PHP редирект делается так: сервер отправляет заголовки headers браузеру посетителя, и тот переходит по нужному адресу автоматически.
    Стоит отметить важный момент, отправлять заголовки можно только до вывода другой информации. То есть они должны отправляться до вывода любой другой информации через echo и до отправки кук.

  • Редирект на другой сайт

    В этом примере, перенаправление будет происходить на сайт http://example.com

  • Здесь перенаправление будет происходить на http://example.com/page.html

  • Редирект определенной страницы на страницу другого сайта

    Здесь если посетитель сайта зайдет на страницу blog/post-1.html то он будет перенаправлен на http://example.com/page.html

  • HTML редирект

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

  • Редирект на другой сайт

    В этом примере, перенаправление будет происходить на сайт https://сайт с задержкой в 5 секунд. Если установить значение задержки вместо 5 в 0, то посетитель будет перенаправляться на другой сайт моментально.

  • Редирект на страницу другого сайта
  • Хотите перенаправить URL-адрес из одного места в другое? В этом простом руководстве мы покажем, как можно это сделать с помощью Apache / .htaccess , PHP , JavaScript , HTML и т. д. Каждый метод редиректа HTML мы кратко поясним и продемонстрируем готовые к использованию примеры.

    Редирект URL-адресов с помощью PHP

    Редирект с помощью PHP выполняется с помощью функции header() , например:

    Эта функция должна быть вызвана в начале веб-страницы до вывода HTML-кода . Чтобы узнать больше о настройке этого метода, ознакомьтесь с документацией PHP .

    Чтобы выполнить редирект с помощью PHP через определенное время:

    Редирект на example.com выполняется через 5 секунд. Вы можете изменить это значение на необходимое.

    Редирект URL-адресов с помощью JavaScript

    Вот самый простой способ index html редиректа с помощью JavaScript :

    document.location.href = "http://example.com/";

    Редирект URL-адресов с помощью HTML

    Можно перенаправить пользователя на новый URL-адрес , используя старый добрый HTML . Вот пример:

    Это называется meta-refresh редирект. Можно задать время (в секундах ), изменив 10 на необходимое число. Обратите внимание, что этим методом редиректа часто злоупотребляют спамеры. Поэтому будьте осторожны, если вы реализуете его на общедоступном сайте.

    Редирект URL-адресов с помощью Perl

    Вот два способа редиректа URL-адресов с помощью Perl :

    #!/usr/bin/perl print "Location: http://example.comnn"; exit;

    Редирект URL-адресов с помощью ASP (VB Script)

    Чтобы перенаправить URL-адрес с помощью ASP , добавьте следующий код:

    Редирект URL-адресов с помощью mod_alias Apache

    Самый простой способ перенаправления на серверах Apache :

    Redirect 301 /old-location.html http://example.com/new-location/

    Перед тем, как сделать редирект HTML , этот код нужно добавить в файл .htaccess или файл конфигурации сервера Apache . Вот синтаксис этого метода:

    [Директива] [Код состояния] [Старый URL] [Новый URL]

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

    http://example.com/old-directory/file-01.html http://example.com/old-directory/file-02.html http://example.com/old-directory/file-03.html . . .

    Можно использовать RedirectMatch вместо Redirect :

    RedirectMatch 301 /old-directory/file-(.*).html http://example.com/new-directory/file-$1.html

    Также можно изменить код статуса с 301 (постоянный редирект ) на 302 (временный редирект ). Или на любой другой действительный код состояния. Ниже приведено руководство по регулярным выражениям, используемым в методе RedirectMatch :

    • или отсутствию символа );
    • $1 — возвращает шаблон, сопоставляемый первым (.*) .
    Редирект URL-адресов с помощью mod_rewrite Apache

    Более функциональный способ редиректа с помощью Apache — использовать его переписывающий модуль mod_rewrite . Вот несколько примеров, которые можно добавить в .htaccess или в файл конфигурации Apache .

    Пример 1: Редирект с www на без www

    Этот код редиректа HTML перенаправляет все www-версии URL-адресов на их эквивалентные версии без www .

    RewriteCond %{HTTP_HOST} ^www.example.com$ RewriteRule (.*) http://example.com/$1

    Это называется канонизацией. Вот несколько примечаний о регулярном выражении, используемом в этом примере:

    • . — буквально соответствует точке;
    • $ — обозначает конец запрошенного URI ;
    • (.*) — соответствует любому символу (или отсутствию символов );
    Пример 2: Редирект всего домена

    Чтобы осуществить редирект HTML с текущего домена на новый:

    RewriteRule ^/(.*) https://new-domain.tld/$1

    Аналогично можно перенаправить запросы из поддомена текущего сайта на поддомен на новом сайте:

    RewriteCond %{HTTP_HOST} (.*).old-domain.tld RewriteRule ^/(.*) https://%1.new-domain.tld/$1

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

    • ^ — обозначает начало запрошенного URI ;
    • (.*) — соответствует любому символу (или отсутствию символов );
    • $1 — соответствует шаблону из круглых скобок (.*) в RewriteRule ;
    • %1 — соответствует первому шаблону из круглых скобок (.*) в RewriteCond
    • — отправляет код состояния 301 и инструктирует Apache прекратить обработку набора правил.

    Обратите внимание : чтобы любой из этих методов работал корректно, оба домена должны иметь одинаковую структуру файлов. Папки и ресурсы на текущем домене также должны существовать и на новом домене. В противном случае вы получите на новом домене кучу ошибок 404 .

    Пример 3: Перенаправление всех файлов HTML и PHP

    Вот еще один, более сложный пример скрипта редиректа HTML mod_rewrite :

    RewriteCond %{REQUEST_URI} ^/old-directory/(.*).(html|php)$ RewriteRule (.*) http://example.com/new-directory/%1.%2

    Мы перенаправляем все запросы к любым файлам HTML или PHP , расположенным в папке /old-directory/ . Все соответствующие запросы перенаправляются в тот же файл, который находится в /new-directory/ . Вот несколько примечаний о регулярном выражении, используемом в этом примере:

    • ^ — обозначает начало запрошенного URI;
    • (.*) — соответствует любому символу (или отсутствию символов );
    • . — буквально соответствует точке;
    • (html php) — соответствует либо html , либо php ;
    • — делает шаблон нечувствительным к регистру;
    • %1 — соответствует первому шаблону из круглых скобок (. *) в RewriteCond ;
    • %2 — соответствует второму шаблону из круглых скобок (html|php ) в RewriteCond ;
    • — отправляет код состояния 301 и инструктирует Apache прекратить обработку набора правил.
    Редирект ошибки 404 с помощью Apache

    Вот удобный код редиректа html HTML всех ошибок 404 «Not Found» на определенный URL .

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

    Редирект в 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: