перенаправление 301 в .htaccess против PHP http_redirect()

#php #.htaccess #redirect #http-status-code-301

#php #.htaccess #перенаправление #http-status-code-301

Вопрос:

Есть ли какая-либо разница в отношении SEO, производительности или иным образом в настройке перенаправления 301 в файле .htaccess по сравнению с вызовом PHPs http_redirect()

Ответ №1:

Использование метода .htacess предотвращает вызов PHP, который технически быстрее. Поскольку иногда говорят, что на SEO влияет время отклика, это может быть преимуществом.

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

Если вы ищете лучшую реализацию в PHP, смотрите http_redirect .

Комментарии:

1. @hakre- спасибо, я на самом деле даже не знал о http_redirect () и соответствующим образом изменил свой ответ. Не могли бы вы расширить свой второй абзац, хотя я не совсем понимаю, что вы там имеете в виду.

2. Если вы выполняете перенаправление через HTTP-заголовки, вы можете отправлять только заголовки или предоставлять больше. Лучше предоставить больше, например, описательный текст HTTP (это то, что вы знаете как веб-страницу, HTML), который сообщает пользователю, что есть перенаправление. Это то, что должно быть сделано в соответствии со стандартом HTTP с давних пор многие пользователи забывают эту часть (либо потому, что они не знают, либо потому, что это «больше работы»). Я видел положительные эффекты как в удобстве использования, так и в том, как роботы реагируют на это. http_redirect это хорошее начало, и в руководстве подробно рассказывается, что он делает, что также является информативным.

3. Если вы заставляете сервер выполнять перенаправление, обычно об этом уже позаботились, поэтому вы автоматически получаете выгоду от лучшей реализации .htaccess, и вам не нужно заново изобретать колесо.

Ответ №2:

Технически разницы нет. Ответ от сервера будет таким же.

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

В любом случае сервер должен открыть файл (либо .htaccess, либо .php) и затем перенаправить. Я не уверен, что загрузка процессора php будет иметь заметное значение. Может быть, если сайт забит тысячами запросов в секунду. 😉