301

Moved Permanently

Официален
URL адресът е променен, за следващи заявки трябва да се използва този адрес.

Общо обяснение на код на състоянието 301

Кодът на състоянието на HTTP 301 Moved Permanently показва, че заявеният ресурс е постоянно достъпен на нов URL адрес. Когато клиент, например браузър или търсачка, получи този отговор, той автоматично се пренасочва към новия адрес. В същото време клиентът запомня новия URL адрес, така че бъдещите заявки могат да бъдат изпращани директно на него. Този код на състоянието често се използва при преструктуриране на уебсайтове или преместване на съдържание, за да се гарантира, че потребителите и търсачките използват актуализираните пътища. За крайния потребител това обикновено се случва незабелязано във фонов режим, тъй като пренасочването се извършва автоматично. От техническа гледна точка пренасочването 301 Moved Permanently е важно, за да се прехвърлят класирането в търсачките и трафикът към новите URL адреси, без да се губят съществуващите връзки. Използвано правилно, то е полезен инструмент за поддържане и оптимизиране на уебсайтове.

Спецификация на HTTP код на състоянието 301

Кодът на състоянието 301 Moved Permanently показва, че на целевия ресурс е бил определен нов постоянен URI и всички бъдещи препратки към този ресурс трябва да използват един от приложените URI. Клиентите с възможности за редактиране на връзки трябва автоматично да препращат препратките към ефективния URI на заявката към една или повече от новите препратки, изпратени от сървъра, когато това е възможно.

Сървърът ТРЯБВА да генерира поле от заглавието Location (Местоположение) в отговора, съдържащо предпочитана препратка към URI за новия постоянен URI. Потребителският агент МОЖЕ да използва стойността на полето Location за автоматично пренасочване. Полезният товар на отговора на сървъра обикновено съдържа кратка хипертекстова бележка с хипервръзка към новия(те) URI.

Забележка: По исторически причини потребителският агент МОЖЕ да промени метода на заявката от POST на GET за последващата заявка. Ако това поведение не е желателно, вместо него може да се използва код на състоянието 307 (временно пренасочване).

Отговор 301 Moved Permanently е кешируем по подразбиране, т.е. освен ако не е посочено друго в дефиницията на метода или изричните контроли на кеша (вж. раздел 4.2.2 на [RFC7234]).

Източник / Цитат от: Кодът на състоянието 301 Moved Permanently на HTTP е определен в раздел 6.4.2 на RFC7231.

Как да изхвърлим код на състоянието 301 с PHP?

За изхвърляне на HTTP статус код 301 на уеб страница може да се използва функцията http_response_code на PHP. Синтаксисът е следният: http_response_code(301) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Тестване на код 301 на състоянието HTTP

За да можете да показвате кода на състоянието на HTTP (в този случай 301 Moved Permanently) и друга информация от страна на клиента, конзолата за разработка трябва да се отвори с F12. След това преминете към раздела "Мрежа". Сега страницата може да бъде отворена, като уебсайтът (пример index.php) трябва да се вижда в раздела "Мрежа". Той трябва да бъде избран и след това трябва да се избере разделът Herder. След това потребителят ще види следния резултат:

Код на състоянието 301 Moved Permanently
Преглед
URL: https://http-statuscode.com/errorCodeExample.php?code=301
Статус: 301 Moved Permanently
Тези: Network
IP адрес: XX.XX.XX.XX
Код на състоянието 301 Moved Permanently

Съвместимост на кода на състоянието 301 с браузъра

Chrome Yes
Edge Yes
Firefox Yes
Opera Yes
Safari Yes
Chrome Android Yes
Firefox for Android Yes
Opera Android Yes
Safari on iOS Yes
Internet Yes
WebView Android Yes

Константи в езиците за програмиране

HttpStatusCode.MovedPermanently
http.StatusMovedPermanently
Response::HTTP_MOVED_PERMANENTLY
httplib.MOVED_PERMANENTLY
http.client.MOVED_PERMANENTLY
http.HTTPStatus.MOVED_PERMANENTLY
:moved_permanently
Автор: Tony Brüser
Автор: Tony Brüser

Тони Брусер е ентусиазиран уеб разработчик със склонност към HTTP кодовете за състояние.

LinkedInGitHub