Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Редирект (Redirect) в PHP

Delphi , Прочее , PHP скрипты

<?php
$address = getenv ("REMOTE_ADDR");

$pos1 = strpos($address,'10.');
$pos2 = strpos($address,'82.199.');

if ($pos1!== false)
    {
    $redirectaddrs = "http://www.iskra-net.ru/"; //полный адрес , если в сети
    }
elseif ($pos2!== false)
    {
    $redirectaddrs = "http://kan.iskra-net.ru/"; //полный адрес , если в сети c внешним ip
    }
else   
    {
    $redirectaddrs = "http://forum.iskra-net.ru/";//полный адрес , если это с наружи
    };

header("Location: ".$redirectaddrs);

exit;
?>

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

 

Автор KAN

Программный скрипт на PHP, который перенаправляет пользователей на различные URL-адреса в зависимости от их IP-адреса. Вот разбивка кода:

<?php
     // Получение удаленного IP-адреса с помощью getenv()
     $address  = getenv("REMOTE_ADDR");

     // Поиск позиции '10.' и '82.199.' в IP-адресе
     $pos1  = strpos($address, '10.');
     $pos2  = strpos($address, '82.199.');

     // Проверка, если IP-адрес начинается с '10.'
    if ($pos1 !== false) {
         // Установка URL-адреса перенаправления в http://www.iskra-net.ru/ если IP-адрес начинается с '10.'
         $redirectaddrs  = "http://www.iskra-net.ru/";
     }
     // Проверка, если IP-адрес начинается с '82.199.'
    elseif ($pos2 !== false) {
         // Установка URL-адреса перенаправления в http://kan.iskra-net.ru/ если IP-адрес начинается с '82.199.'
         $redirectaddrs  = "http://kan.iskra-net.ru/";
     } else {
         // Установка по умолчанию URL-адреса перенаправления в http://forum.iskra-net.ru/ для всех других IP-адресов
         $redirectaddrs  = "http://forum.iskra-net.ru/";
     }

     // Отправка HTTP-заголовка Location для перенаправления пользователя на указанный URL
    header("Location: " . $redirectaddrs);

     // Имедителльное завершение скрипта после отправки заголовка Location, чтобы предотвратить любое дальнейшее вывод в браузер
    exit;
?>

Скрипт использует функцию getenv() для получения удаленного IP-адреса пользователя. Затем он проверяет, если IP-адрес начинается с '10.' или '82.199.', и устанавливает URL-адрес перенаправления соответственно. Если IP-адрес не соответствует ни одному из этих условий, он по умолчанию использует третий URL.

Функция header() используется для отправки HTTP-заголовка Location для перенаправления пользователя на указанный URL. Статements exit используется для немедленного завершения скрипта после отправки заголовка Location, чтобы предотвратить любое дальнейшее вывод в браузер.

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

В статье рассмотрен пример использования редиректа (Redirect) в PHP для перенаправления пользователей на соответствующие страницы в зависимости от их IP-адреса.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




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


:: Главная :: PHP скрипты ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-05-21 08:21:19/0.015512943267822/0