Должна ли "временная" страница перенаправления использовать перенаправление 301?

Скажем так foo.com где я в конечном итоге хочу разместить сайт, когда он будет готов, и blog.foo.com где я в настоящее время хостинг веб-сайта. До тех пор foo.com готов, можно ли сделать постоянное перенаправление (301) на blog.foo.com?

Как только оригинальный сайт будет готов, может ли это оказать какое-либо негативное влияние на него? Если да, то почему / как?


Одна из причин, по которой я хочу использовать постоянное перенаправление, заключается в том, что использование временного перенаправления негативно сказывается на поисковом рейтинге blog.foo.com, Я использую Blogger для обслуживания, поэтому не думаю, что было бы возможно добавить канонический метатег.

2 ответа

Решение

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

Даже если кэш браузера очищен, любые прозрачные прокси на этом пути также могут кешировать ответ 301.

302 ответа не кэшируются.

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


На самом деле чтение RFC может быть настолько поучительным.

Из раздела о 301-м:

Клиенты с возможностями редактирования ссылок должны автоматически связывать ссылки на Request-URI с одной или несколькими новыми ссылками, возвращаемыми сервером, где это возможно. Этот ответ кешируется, если не указано иное.

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

Ответы 303 и 307 были созданы специально в ответ на то, что клиенты неправильно перенаправили 302. Предполагается, что метод запроса остается неизменным при последующем запросе, однако на самом деле очень немногие клиенты делают это и вместо этого всегда переходят на запрос GET.

Ответ 303 сообщает клиенту, что он должен использовать запрос GET при следующем переходе. Запрос 303 не может быть кэширован.

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

Как 303, так и 307 обычно не понимаются клиентами до HTTP/1.1. Это также может относиться к новым клиентам, где разработчик не реализовал всю спецификацию. Это, вероятно, только проблема, если вы знаете, что у вас много очень старых клиентов.


Что касается ваших опасений по поводу SEO, причина того, что blog.foo.com не получить более высокий рейтинг в том, что вы указываете, что foo.com правильный URL-адрес и только временно blog.foo.com, Поэтому любые ссылки, указывающие на foo.com следует увеличить рейтинг foo.com и не blog.foo.com, Поисковый трафик будет отправлен на foo.com и перенаправлен на blog.foo.com вместо трафика, отправляемого напрямую blog.foo.com,

Когда вы удалите перенаправление, foo.com будет иметь высокий рейтинг и трафик не будет отправлен blog.foo.com, Я ожидаю, что это то, что вы хотите, чтобы произошло.


Что вы должны сделать?

Я бы пошел с перенаправлением 303, если у меня не было форм на сайте, которые принимали запросы POST. Для тех я бы использовал 307, что заставило бы сделать POST снова на временном сайте.

Я также изменил бы ответ 303 на перенаправление 302 для любого запроса, указывающего, что это было HTTP/1.0 и не HTTP/1.1,

Если вы решите пойти с 301-м, вы, скорее всего, по-прежнему будете видеть движение трафика blog.foo.com в течение некоторого времени после удаления перенаправления. Рейтинг blog.foo.com может задержаться на некоторое время.

Отказ от ответственности: я далеко не эксперт SEO.

Использование перенаправления 301 здесь не представляется целесообразным. Не с точки зрения семантического HTTP-кода или с точки зрения SEO. 301 должен использоваться для постоянных перенаправлений, а у вас нет. Это временно. С точки зрения SEO, контент должен начать переноситься с foo.com на blog.foo.com, что противоположно тому, что вы хотите в долгосрочной перспективе.

Я бы рекомендовал использовать 302 или 307.

Другие вопросы по тегам