Выполнение перенаправления без использования 301, но сценарий PHP, это нормально? - PullRequest
0 голосов
/ 19 ноября 2018

Я читал о перенаправлении и о том, как оно может повлиять на (или не сделать это правильно) SEO.

Я изменяю платформу контента моего веб-сайта с Drupal на специальный код PHP.

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

... / узел / 123

... / мой-узел титульный

Главным образом потому, что Drupal позволяет вам создавать пользовательские ссылки, поэтому каждая статья имеет одну по умолчанию (node/123) и пользовательскую (/my-node-title).

Мой вопрос о том, что делать, чтобы не потерять SEO, который может иметь каждая ссылка.

На новом сайте все статьи структурированы так: content.php?id=123

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

Вместо перенаправления 301 я перенаправляю все несуществующие ссылки для перенаправления на страницу redirect.php для обработки запроса. Там я беру строку из ссылки, ищу ее в базе данных и перенаправить пользователя.

Процесс такой:

в файле .htaccess:

RewriteRule ^.*$ ./redirect.php

В redirect.php:

Я беру $_SERVER['REQUEST_URI'] и с помощью explode () Я получаю последнюю часть ссылки (т.е. my-node-title), ищу ее в базе данных и беру идентификатор ID статьи (т.е. 123) и сохраните его в переменной $link.

Затем я использую функцию header () и делаю перенаправление: header('Location: '.$link);

Итак, люди по-прежнему нажимают .../my-node-title, но при загрузке статьи на панели навигации появляется /content.php?id=123

Я хотел бы знать ваши комментарии об этом решении. Я знаю, что с SEO нет фиксированных правил или определенности в чем-либо, но я хотел бы знать, приемлемо ли то, что я делаю. Спасибо!

1 Ответ

0 голосов
/ 19 ноября 2018

Ваша SEO стратегия должна быть не только нацелена на обнаружение ваших страниц, но также и принимать во внимание надлежащий UX.Если пользователь перейдет по ссылке / some-link / и затем приземлится на /index.php?page_id=123, это может дезориентировать его.

Что касается сохранения вашего рейтинга, редирект 302 (то есть заголовок 'Location'делает в PHP), не влияет на PageRank, в соответствии с Google .У меня нет информации о том, как это может негативно повлиять на другие сигналы ранжирования.Возможно, вам стоит указать канонический URL для всех отдельных ссылок, которые указывают на один и тот же ресурс.

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

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

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