Редирект на страницу php: Как сделать редирект в PHP | REG.RU

Переадресация внутри сайта с помощью .htaccess

🏠 | 💻 PC | Web |

Содержание статьи
Введение
Как сделать переадресацию
Как сделать несколько редиректов
Решение проблем

Введение

Прежде, чем заниматься переадресацией, нужно выяснить тип сервера, на котором размещён Ваш сайт.

Файл .htaccess вносит изменения в работу сервера Apache

В Nginx похожой цели служит файл nginx.conf суть там та же, но синтаксис немного другой.

Простая постоянная переадресация 301

Чтобы перенестри страницу с одного адреса на другой на постоянной основе вносите в .htaccess следующие изменения:

RewriteEngine on Redirect 301 old_url http://адрес_новой_страницы

Где old_url это адрес_старой_страницы_относительно_корня_сайта

Если ваш сервер это Apache, a файла .htaccess у Вас нет, можете создать его самостоятельно и поместить, например, в корневую директорию.

Пример

RewriteEngine on Redirect 301 /old_dir/url1.php /new_dir/url1.php

Redirect 301 /old_url1.php /new_url.php Redirect 301 /old_url2. php /new_dir/new_url.php

Можно сделать переадресацию целой директории

RewriteEngine on Redirect 301 /old_dir /new_dir

Два редиректа

Если вы делаете два редиректа, которые влияют на какую-то страницу, например перенаправляете целую директорию, и ещё дополнительно что-то меняете внутри — нужно делать это аккуратно

Допустим было:

/old_dir/a.php
/old_dir/b.php
/old_dir/page.php

А теперь нужно:

/new_dir/a.php
/new_dir/b.php

/new_dir/new_page.php

Для переадресации a.php и b.php достаточно создать правило

Redirect 301 /old_dir /new_dir

А вот чтобы правильно перенаправить с.php в new_page. php нужно мысленно представить, куда перенаправится старый с.php с учётом нашего редиректа Redirect 301 /old_dir /new_dir

Как вы наверное и сами догадались, перенаправится он из

/old_dir/page.php

в

/new_dir/page.php

И уже вот этот несуществующий /new_dir/page.php нам нужно перенаправить в

/new_dir/new_page.php

Поэтому правило будет выглядеть следующим образом

Redirect 301 /old_dir /new_dir

Redirect 301 /new_dir/page.php /new_dir/new_page.php

Дебаг

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

У хостинга Beget которым я пользуюсь, и вам могу порекомендовать — логи с ошибками доступа лежат в файле sitename. xx.error.log

Когда я хочу проверить, что не так — я логинюсь на хостинг по ssh захожу к себе в public_html и делаю

tail -n 100 andreyolegovich.ru.error.log

Так я вижу последние 100 строк сегодняшнего лога. И если бы там было

… script ‘/home/xxx/andreyolegovich.ru/public_html/new_dir/page.php’ not found or unable to start, referer heihei.ru

Я бы понял, что не настроена переадресация со старого page.php на новый new_page.php и добавил бы строку

Redirect 301 /new_dir/page.php /new_dir/new_page.php

В .htaccess

Подробнее про работу с логами читайте в моей статье про тестирование

Также советую изучить команды Bash

Роботы:
207.46.13.56 bing

Похожие статьи:

🛠 Полезные советы
🖽 Html
🖌 CSS
Joomla
UTM-метки
URLencode
Переадресация страниц сайта
Адаптивный дизайн сайтов
Настройка почтового ящика на Яндекс
Какой хостинг выбрать
Как перенести сайт
Яндекс Метрика
Разница между POST и PUT
Word Press
SEO
Тестирование сайта
A numeric character reference expanded to the C1 controls range.
JavaScript
.webp
Flask
Django
Как указать каноническую страницу сайта
  • Поиск по сайту
  • aofeed — Telegram канал чтобы следить за выходом новых статей
  • aofeedchat — задать вопрос в Телеграм-группе
Контакты и сотрудничество:
Рекомендую наш хостинг beget.ru
Пишите на [email protected] если Вы:
1. Хотите написать статью для нашего сайта или перевести статью на свой родной язык.
2. Хотите разместить на сайте рекламу, подходящуюю по тематике.
3. Реклама на моём сайте имеет максимальный уровень цензуры. Если Вы увидели рекламный блок недопустимый для просмотра детьми школьного возраста, вызывающий шок или вводящий в заблуждение — пожалуйста свяжитесь с нами по электронной почте
4. Нашли на сайте ошибку, неточности, баг и т.д. … …….
5. Статьи можно расшарить в соцсетях, нажав на иконку сети:

Узнайте какие бывают редиректы и в каких случаях их нужно настраивать.

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

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

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

Говоря простыми словами, редирект – это перенаправление пользователя с одной страницы на другую. Хотите увидеть, что значит редирект, собственными глазами? Проследуйте на сайт Google, проставьте в конце адреса https://www.google.ru значок слэш (/) и нажмите Enter. Вас перенесет обратно на страницу https://www.google.ru. Это и было перенаправление.

Что такое редирект сайта, поможет понять схема:

  • Пользователь вбивает URL (адрес страницы) в адресную строку браузера. Этот URL обозначим Url 1.
  • Браузер обращается к серверу с запросом отобразить страницу по адресу Url 1.
  • Сервер видит: на странице настроено правило, согласно которому по адресу Url 1 должна открываться страница, доступная по Url 2. Вторую страницу он и отдает браузеру, который, не видя подвоха, показывает ее пользователю.

Юзеры обычно не замечают перенаправления, поскольку получают информацию, которая им необходима.

Редирект бывает настроен так, что перенаправление производит браузер. Это исключительный случай, который мы рассмотрим позже.

В терминологии SEO Url 1 называют донором, Url 2 – акцептором. Подобно тому, как настоящие доноры отдают кровь или плазму, Url-донор жертвует акцептору авторитет и ссылочную массу.

Виды редиректов

Есть два основных вида редиректа и два, которые используют значительно реже.

Основные виды редиректов:

  • 301 – страница навсегда переехала на новый адрес.
  • 302 – страница поменяла адрес временно.

Почему поисковой системе важно знать, временно страница поменяла адрес или насовсем? Редирект 301 фактически даёт ПС понять, что новый URL нужно индексировать, а старый лучше из индекса выбросить. Происходит замена УРЛов в индексе.

С временным редиректом сложнее, здесь просьба сосредоточиться. Видя 302 редирект, поисковая система понимает, что сразу выбрасывать из индекса страницу, с которой происходит перенаправление, не нужно. Поэтому сначала ПС индексирует страницу, на которую происходит перенаправление, затем сравнивает длины URL 2-х страниц и оставляет в индексе ту, у которой URL короче. Из страниц, доступных по адресам www.site.ru/page и www.site.ru/page-1, робот оставит в индексе первую. Это официальная информация от «Яндекс», появившаяся в «Вебмастерской» в 2017-м.

Редиректы 303 и 307 – альтернативы для временного перенаправления. Они необходимы потому, что некоторые браузеры используют для нового запроса метод GET как более безопасный. 302 редирект рассчитан на метод POST – то есть в ряде браузеров автоматического перенаправления по 302 не будет. 303 редирект лучше настраивать для страниц, где есть формы для заполнения (и, как следствие, безопасность важна). Статус 307 – полный аналог 302 для HTTP 1.1. Редирект 307 работает со всеми методами запросов, но при использовании небезопасного метода POST перестраховывается – запрашивает подтверждение пользователя.

Так какой из временных редиректов лучше использовать? Ответ: никакой. Поберегите своего SEO-шника, у него и так голова пухнет от постоянно обновляющейся информации. Вероятность 90%, что кроме 301 редиректа никакие не пригодятся. Временный понадобится, если вы, например, задумаете А/В тестирование.

Когда нужно делать редирект?

Вот примеры ситуаций, в которых используют редиректы:

  • При склейке адресов страниц после перехода на защищенный сертификат (HTTPS). На страницах с HTTP настраивают 301 редиректы. Из-за такого массового переезда обычно возникает просадка в трафике, но позже при редиректе позиции сайта в поиске восстанавливаются.
  • При переезде сайта на другой домен.
  • Для исключения дублей главной страницы с префиксом www, дополнением /index.php, знаком слэш (/) или дефисом на конце URL-адреса.
  • Когда товар интернет-магазина временно отсутствует на складе. Еще один кейс для применения 302 редиректа. Можно настроить временное перенаправление с карточки отсутствующего товара на карточку товара в наличии, чтобы не терять трафик.
  • Если у сайта появилась мобильная версия. Для чего нужен редирект в этой ситуации? Чтобы всех, кто заходит со смартфонов и планшетов, перенаправлять на поддомен мобильной версии (vk.com -> m.vk.com).
  • Если URL построен согласно структуре каталога и в него нужно добавить уровень.
  • Когда нужно перевести URL в нижний регистр.
  • Для перенаправления с несуществующих URL на страницу 404.

Нельзя исключать обычное человеческое раздолбайство. Скажем, контент-менеджер напортачил и опубликовал контент дважды – это означает, что редирект должен перенаправлять на страницу, URL которой составлен более грамотно.

Как сделать редирект?

Существуют 4 способа настроить редирект на сайте – разной степени полезности для SEO.

Файл .htaccess

Этот способ настройки редиректов среди SEO-шников считается самым правильным. Перенаправление, настроенное так, работает быстро, не заставляет пользователя ждать. Настройка сводится к тому, что нужно прописать строчки кода в файле . htaccess. Файл лежит в папке сайта (подпапка public_html). До него можно добраться с помощью FTP-клиента или через панель управления хостинг-провайдера. На хостинге «Таймвеб» это выглядит так:

Файл можно открыть и править прямо в панели управления. В «Блокнот» копировать не нужно.

Но как сделать редирект ссылки в .htaccess без навыков написания кода? Получить код редиректа для файла .htaccess для конкретного случая можно при помощи генератора BeamUsUp. Это бесплатный и простой сервис.

Файл index.php

Редирект, настроенный в index.php, медленнее, чем перенаправление в .htaccess. Однако лучше пользовать этим способом, если нужно настроить редиректы выборочно, а не массово.

Файл index.php обычно лежит в папке public_html.

Коды редиректов PHP — как для .htaccess. Например, при переходе на защищенный сертификат (SSL) нужно использовать следующий:

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

JavaScript

JavaScript нельзя использовать для редиректа в случае, например, перехода на защищенный сертификат — он перенаправляет долго. А если у пользователя в браузере стоит запрет редиректов через скрипты, перенаправления вообще не произойдет. Есть небольшое количество ситуаций, в которых такой метод настройки редиректа полезен – если, скажем, вы оставили на странице-доноре послание вроде «Мы переехали на новый сайт». Тогда задержка на руку – пользователю хватит времени, чтобы прочесть.

Скрипт редиректа добавляется в контейнер <head>. Для генерации кода подойдет сервис Rapidtables.

Как сделать редирект HTML?

HTML-редирект, как и перенаправление через JavaScript, относится к категории браузерных. Минус – медленная работа, но он работает при отключенных в браузере JS.
Настроить редирект через HTML можно, добавив в контейнер <head> тег <refresh>, который выглядит так:

<meta http-equiv=»refresh» content=»1;URL=адрес страницы-акцептора» />

Единица в теге обозначает, что перенаправление произойдет через 1 секунду. Велик соблазн поставить «нолик», но «Яндексу» редиректы с такой настройкой не нравятся.

Полагаем, вы поняли, какие редиректы нужно настроить на сайте. Однозначно, серверные – через .htaccess или PHP. Браузерные работают с задержкой. Даже секунда промедления при загрузке страницы может обрушить позиции сайта, ведь поисковые системы сейчас «топят» за скорость.

Простой способ настроить redirect

SEO-специалисты, сайты которых на CMS WordPress – большие везунчики. Они могут настроить карту редиректов на ресурсе, не обращаясь к генераторам кода и файлам в «корне» сайта. Сказать «спасибо» нужно плагинам. Для управления редиректами подойдут:

  • Redirection.
  • 301 Redirects.
  • SEO Redirection Plugin.
  • Quick 301 Redirects.

Если планируете переход на SSL-сертификат – плагин Really Simple SSL вам в помощь! Это легкое расширение для WP автоматически проставляет редиректы и делает адреса URL на сайте относительными. Пользователю нужно нажать лишь одну кнопку.

Когда нельзя использовать редирект?

Редиректы – полезная вещь, которая может выручить SEO-шника, но злоупотреблять ими нельзя. Не прибегайте к редиректам в таких ситуациях:

  • Страница-акцептор отдает код ответа 301 и имеет статус страницы «редирект» — что это значит? Значит, если вы настроите перенаправление на эту страницу, то создадите цепочку редиректов – это уже SEO-ошибка. Перенаправляйте только на страницы, отдающие код ответа 200 (ОК).
  • Когда страница-акцептор нерелевантна с точки зрения контента странице-донору. Чем ниже релевантность, тем меньше веса передаётся по редиректу. А если вес не передаётся, тогда вообще зачем нужен редирект?
  • При переезде сайта на другой домен для файла robots.txt. Если прежний «роботс» доступен, склейка пройдет быстрее.

У SEO-специалистов есть правило: если можно обойтись без редиректов, лучше так и сделать. Для устранения дублей на сайте вместо редиректов часто используют тег rel=canonical. После простановки этого тега страница с дублированным контентом остается доступна пользователю, но вес переходит оригинальной странице.

 

PHP Redirect Hack — перенаправление веб-сайта PHP на другие сайты

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

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

Связанное руководство — Полное руководство по удалению вредоносных программ PHP

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

Тем не менее, в большинстве случаев ваш веб-сайт выглядит так после того, как его взломал перенаправление PHP.

Примеры взлома перенаправления; Источник: Astra

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

Во-первых, давайте разберемся с различными типами взлома перенаправления PHP.

Ежедневно взламываются 30 000 веб-сайтов. Ты следующий?

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

Начало работы

Бесплатная пробная версия на 7 дней

Типы взлома PHP с перенаправлением

Существуют различные типы взлома перенаправления, которые могут создать проблемы для вашего сайта. Вот наша тройка лидеров:

1.

Перенаправление для конкретного устройства s

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

2.

Взлом с помощью push-уведомлений

Иногда взломанный веб-сайт может отображать push-уведомления, которые, в свою очередь, перенаправляют пользователей на вредоносный веб-сайт. Это один из наиболее распространенных способов взлома PHP с перенаправлением.

3.

Перенаправление по географии

Когда определенные хакеры хотят нацелиться на посетителей из определенной географии, веб-сайты перенаправляются только в указанной географии. Это означает, что если город А находится в хит-листе, пользователи города Б могут вообще не столкнуться с перенаправлением или вообще быть перенаправлены на другую ссылку.

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

Способы взлома PHP Redirect

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

1.

Путем вставки вредоносного JavaScript

Хакеры могут включить вредоносный скрипт в записи JavaScript вашего веб-сайта, что приводит к перенаправлению, известному как взлом перенаправления PHP. Вы можете определить сценарий, который выполняет все эти вредоносные перенаправления, и сделать перенаправление вашего веб-сайта бесплатным. Вот как выглядит вредоносный JavaScript:

Источник изображения: Astra

2.

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

3.

Путем взлома панели администратора

Плохо проверенные веб-сайты могут иметь уязвимости, которые могут привести к повышению привилегий. Хакеры используют эту уязвимость и добавляют себя в качестве администраторов-призраков на ваш сайт. Эти привилегии доступа позволяют им создавать бэкдоры и выполнять взлом PHP с перенаправлением.

5-этапный взлом PHP redirect процесс удаления

Мы ненавидим видеть, как ваш бизнес страдает из-за чего-то, чего можно было легко избежать. По той же причине, вот пять вещей, которые вы можете сделать, чтобы выбраться из «взломанной» зоны.

1.

Просканируйте свой сайт

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

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

2.

Проверить наличие новых администраторов

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

Если вы используете WordPress и у вас нет требований к функции «Любой может зарегистрироваться», лучше всего отключить ее. Пока вы это делаете, также установите «Роль нового пользователя по умолчанию» на «Подписчик».

3.

Поиск вредоносных ссылок в вашей базе данных

Ваша база данных также может быть источником перенаправления PHP-хака. Чтобы проверить это, войдите в PhpMyAdmin и выполните поиск по следующим словам: