Швидка навігація по сторінці:
- Заголовок мови PHP функції
- У чому користь редіректу?
Якщо ви вирішили написати скрипт і зробити редирект PHP, переваги цього кроку очевидні: PHP – серверно орієнтована мова скриптів; перенаправлення буде виконуватися за допомогою скрипта на сервері, а не в браузері відвідувачів. Деякі перенаправлення можуть бути виконані на стороні клієнта — через редирект js (тобто через JavaScript редирект).
Це більш гнучкий і універсальний підхід, і ви можете виконати кілька типів редиректа в PHP, на відміну від інших методів. Ось — найбільш часті види редиректа, які можна зробити в PHP: a) 301 редирект PHP (статус постійного перенаправлення), b) 302 редирект PHP (тимчасовий статус переадресації), з) Оновлення.
Ця стаття буде корисна, в першу чергу, для початківців веб-майстрів, які шукають способи реалізації перенаправлення URL, якщо це не можливо з використанням інших поширених рішень, таких як Htaccess.
Заголовок мови PHP функції
Наприклад, припустимо, ви хочете зробити редирект до цього URL http://www.somewebsite.com/target.php. У вихідному PHP сторінки, Вам просто слід викликати цей скрипт редіректу:
<?php
header(‘Location: http://www.somewebsite.com/target.php’);
?>
Спробуйте також провести цей простий експеримент на вашому локальному хостингу:
1) Відкрийте текстовий редактор і введіть цей код:
<?php
echo “Hi this is codex-x”;
?>
Збережіть його як targetpage.php.
2) Відкрийте інший порожній текстовий файл і введіть цей код:
<?php
header(‘Location: http://localhost/targetpage.php’);
?>
Збережіть його як originatingpage.php.
3) Тепер запустіть веб-браузер. В адресному рядку браузера введіть: http://localhost/originatingpage.php
4) Ви помітите, що після натискання кнопки введення, цей URL: http://localhost/originatingpage.php робить редирект на http://localhost/targetpage.php і на targetpage.php і ви бачите слова «Hi this is codex-x».
Одна з найпоширеніших помилок може критися в оформленні коду html редіректу:
Спробуйте виконати цей експеримент:
Перейдіть до скрипту originatingpage.php і додайте будь HTML тег:
header(‘Location: http://localhost/targetpage.php’);
Припустимо, у вас є такий код:
<html>
<head>
<title> Це – помилка редіректу </ TITLE>
</ HEAD>
<body>
<? PHP
header(‘Location: http://localhost/targetpage.php’);
>
</ BODY>
</ HTML>
2) Збережіть файл.
3) Запустіть знову скрипт originating.php у браузері. Якщо ви не бачите будь-які помилки, ви помітите, що вона як і раніше чисто перенаправляє до targetpage.php
4) Тепер спробуйте змінити цільову URL-адресу, щоб вказати на реальний сайт, наприклад:
<html>
<head>
<title> приклад помилки редіректу</ TITLE>
</ HEAD>
<body>
<? PHP
header(‘Location: http://localhost/targetpage.php’);
>
</ BODY>
</ HTML>
5) Завантажте originatingpage.php на віддалений хостинг в кореневий каталог сайту.
6) Виконайте скрипт у браузері за допомогою виклику originatingpage.php URL, наприклад: http://www.php-developer.org/originatingpage.php
7) Ви помітите, що на цей раз, ви зіткнетеся з помилкою:
Warning: Cannot modify header information – headers already sent by (output started at /home/phpdevel/public_html/originatingpage.php:6) in /home/phpdevel/public_html/originatingpage.php on line 7
Що тут відбувається? Причиною проблеми є те, що у вас вже виведений код HTML перед заголовком функції.
У чому користь редіректу?
Завдяки редіректу, ви можете здійснювати перенаправлення користувачів з однієї веб-сторінки на іншу. Також, якщо наприклад, на вашому сайті тексти посилань на статті перебувають у непривабливому вигляді (набір цифр або знаків), їх можна змінити, застосувавши транслітерацію і зробивши редирект на ці посилання. Можливості перенаправлення практично необмежені! Користь цього методу для підвищення індексації сторінок, поліпшення показників сайту, залучення користувачів очевидна.