В чем разница между 301 и 302 в HTTP?


9

Я вижу, что все сайты используют как tinyurl 302

Но какая разница? Кажется, оба работают на меня

Ответы:


12

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

Статус 302 (найдено) означает, что ресурс временно находится в другом месте. Клиент должен использовать данное местоположение для текущего запроса, но в будущем должен продолжать использовать старое местоположение.

Оба кода состояния приведут к тому, что браузер выполнит перенаправление. Вы должны выбрать статус 301 или 302 в зависимости от того, является ли перенаправление постоянным или временным.

Дополнительную информацию об этих кодах ответов HTTP можно найти в RFC 2616 .


Что делать, если я хочу отменить 301? Это из-под контроля, так как он больше не используется?
vps

@vps Вы можете отменить перенаправление 301, но нет гарантии, что клиент повторно запросит исходный URL. Если вы хотите иметь возможность отменить перенаправление в будущем, тогда вам лучше использовать 302.
Фил Росс

3

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

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

Браузер: если браузер находит код состояния 301, он кэширует сопоставление старого URL-адреса с новым URL-адресом, клиент / браузер не будет пытаться запросить исходное местоположение, а будет использовать новое местоположение с этого момента, пока не будет удален кэш.

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

Узнайте больше о том, как реализовать это в asp.net c # и как это повлияет на поисковую систему - http://www.dotnetbull.com/2013/08/301-permanent-vs-302-tevent-status-code- САШ-CSharp-Implementation.html


0

Они разные в SEO.

Для 302 Google сохранит URL перенаправителя и будет указывать на него пользователей.

Также (для tinyurl) использование 302 позволяет изменить перенаправление, например, в случае спама (см. Пример http://tinyurl.com/nospam.php?id=amgzs6 ). Использование 301 усложняет изменение перенаправления


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.