Ошибка 410 Gone означает, что страница удалена с сайта навсегда, и сделано это намеренно. Сервер не просто не нашёл документ, как при 404, а сообщает: он был, его больше нет и не будет, ссылки на этот адрес можно убирать.
Мы проверили на стенде, как ответ 410 настраивается в nginx 1.22, Apache 2.4.68 и PHP 8.3 и как его показывает Chromium 149, а затем запросили заведомо несуществующую страницу у 2056 сайтов, чтобы посмотреть, кто и как отвечает на такой адрес.
Что означает ошибка 410 Gone
Стандарт HTTP (RFC 9110, раздел 15.5.11) определяет код так:
The 410 (Gone) status code indicates that access to the target resource is no longer available at the origin server and that this condition is likely to be permanent.
Дальше в стандарте сказано, для чего код нужен: он помогает обслуживанию сайтов, сообщая, что ресурс недоступен намеренно и владельцы хотят, чтобы внешние ссылки на него убрали. Типичные случаи, по стандарту, — ограниченные по времени акции и страницы людей, которые больше не связаны с сайтом.
Важная оговорка: если сервер не знает, навсегда ли пропала страница, стандарт велит отвечать 404. А помечать удалённые страницы кодом 410 вообще не обязательно — это решает владелец.
Почему возникает ошибка 410: основные причины
Чаще всего код 410 появляется в одной из таких ситуаций:
- Владелец удалил страницу намеренно. Это нормальное состояние, а не проблема: сайт сообщает правду.
- Посетитель пришёл по устаревшей ссылке. Адрес был действующим раньше, но ссылка в закладках, письме или на другом сайте не обновлена.
- Неверное правило на сервере. Шаблон в .htaccess или nginx захватывает больше адресов, чем нужно, и рабочие страницы ошибочно получают 410.
- Система управления сайтом или плагин. Некоторые CMS и SEO-плагины автоматически отдают 410 для удалённых записей, а иногда и для черновиков или скрытых товаров.
- Скрипт защиты или фильтры хостинга. Редко, но встречается: защита от ботов отвечает нежелательным, по её мнению, клиентам не 403, а 410.
- Изменение структуры сайта. После переезда старые адреса закрыли кодом 410 вместо редиректа 301 на новые.
Чем коды 410, 404 и 301 отличаются друг от друга
| Код | Что говорит сервер | Когда использовать |
|---|---|---|
| 404 Not Found | страницы нет, причина не уточняется | адрес никогда не существовал или неизвестно, вернётся ли страница |
| 410 Gone | страница удалена навсегда | акция закончилась, товар снят навсегда, раздел закрыт |
| 301 Moved Permanently | страница переехала | есть новый адрес или прямая замена |
Яндекс в справочнике кодов Вебмастера даёт такое же разделение: «Если ресурс удален навсегда, обеспечьте корректную отдачу кода 410. Для перемещенных ресурсов настройте перенаправление 301».
Когда следует использовать код 410
- закончилась акция или распродажа, и её страница больше не нужна;
- товар снят с производства, и аналога нет;
- удалён раздел сайта или старая версия документации;
- страница создана по ошибке или мусорная — например, сгенерированные взломщиками адреса, которые нужно убрать из поиска;
- профиль пользователя удалён по его просьбе.
Когда код 410 использовать нельзя
- Страница вернётся. Временно закрытый раздел или товар, которого нет в наличии, — это не 410. Для временных случаев подходит 404 или обычная страница с пометкой «нет в наличии».
- Есть замена. Если у товара новая модель или статья переписана по новому адресу, нужен 301 — иначе потеряются посетители по ссылкам.
- Адрес никогда не существовал. На случайные и опечатанные адреса правильный ответ — 404.
Стенд: как настроить ответ 410
Пример для nginx
location = /akciya-leto-2025/ { return 410; } # одна страница
location ^~ /staryy-katalog/ { return 410; } # весь раздел
error_page 410 /410.html; # своя страница
location = /410.html { internal; }
Без error_page nginx отдал стандартную страницу с текстом «410 Gone» и версией сервера — так её и показал Chromium. С error_page Chromium показал нашу страницу «Страница удалена. Акция закончилась. На главную», а код ответа остался 410.
Пример для Apache
В .htaccess подходят два способа, оба мы проверили:
Redirect gone /staraya-akciya
RewriteEngine On
RewriteRule ^oldproduct - [G,NC]
Оба дали 410. Флаг NC сделал правило нечувствительным к регистру: адрес /OLDPRODUCT-x тоже получил 410. Стандартная страница Apache — английская и в кодировке iso-8859-1: «Gone. The requested resource is no longer available on this server and there is no forwarding address». Для русского сайта лучше задать ErrorDocument 410 со своей страницей.
PHP и CMS
В PHP достаточно одной строки перед выводом страницы:
http_response_code(410);
На стенде ответ пришёл с кодом 410 и нашим текстом в UTF-8. В CMS удалённая запись обычно отдаёт 404; для 410 нужен плагин или правило на сервере.
Какой должна быть страница с ответом 410
Посетителю код не виден, он видит только текст. Хорошая страница 410:
- объясняет, что страница удалена и почему: «акция закончилась», «товар снят с производства»;
- предлагает, куда пойти дальше: каталог, похожие товары, поиск по сайту;
- оформлена как остальной сайт, а не как служебная страница сервера.
Кэш: 410 может пережить восстановление страницы
Стандарт относит 410 к кодам, которые кэшируются по умолчанию, — как 200, 301 и 404. Мы проверили, что это значит на практике. Страница отдавала 410 с заголовком Cache-Control: max-age=3600. Потом мы вернули её: curl уже получал 200. Но Chromium при переходе по ссылке показал старый ответ «Удалено» и вообще не обратился к серверу. Новую страницу он показал только после обновления F5.
Вывод: прежде чем отдавать 410 с долгим кэшем, убедитесь, что удаление окончательное. Восстановленную страницу часть посетителей будет видеть удалённой, пока не истечёт срок кэша.
Как ответ 410 влияет на SEO
Google в документации о кодах ответа пишет: «All 4xx errors, except 429, are treated the same». Робот сообщает индексатору, что содержимого нет, и страница удаляется из индекса, если была в нём. Частота обхода такого адреса постепенно снижается. Отдельного описания для 410 на странице нет — он стоит в той же строке, что и 404.
Поэтому 410 не волшебная кнопка «удалить из Google». Его польза в другом: он честно сообщает людям и программам, что страница удалена намеренно, и по стандарту просит убрать ссылки. Яндекс, судя по справочнику, рекомендует отдавать 410 для удалённых навсегда ресурсов.
Индексация удалённого адреса, ссылки и карта сайта
После перевода страницы на 410:
- Уберите адрес из карты сайта — иначе роботы будут приходить к нему снова.
- Уберите внутренние ссылки на него из меню, статей и каталога.
- Если на страницу ссылались другие сайты и у неё есть замена, лучше поставить 301, чтобы не терять переходы.
- Не закрывайте адрес в robots.txt: робот должен увидеть код 410, а закрытую страницу он не запросит.
Обход: как сайты отвечают на несуществующую страницу
Мы запросили у 2056 сайтов адрес, которого на них точно нет, и дошли по перенаправлениям до конечного ответа. Ответили 1585 сайтов.
| Конечный ответ | Сайтов из 1585 |
|---|---|
| 404 | 1326 |
| 200 — «мягкая» 404 | 162 |
| 403 | 53 |
| 500 | 7 |
| 410 | 3 |
| Прочие коды | 34 |
Кодом 410 на выдуманный адрес ответили три сайта, и это ошибка: адреса никогда не было, правильный ответ — 404. У двух из них в заголовке страницы при этом написано «Страница не найдена» и «404 - страница не найдена» — сервер говорит одно, а страница другое.
Хуже другая группа: 162 сайта на несуществующий адрес ответили 200. Это «мягкая» 404 — посетитель видит пустую страницу или главную, а поисковик считает адрес рабочей страницей. 47 из них перенаправили на главную. Подробнее о том, как проверить свою страницу 404, — в отдельной статье.
Трафик и позиции после перевода на 410
Удалённая страница перестаёт получать трафик из поиска: как только робот повторно её обойдёт и увидит 410, она выпадет из результатов, а вместе с ней — её позиции по запросам. Поэтому до удаления посмотрите, приносит ли страница посетителей. Если приносит, вероятно, лучше сохранить её содержимое на другой странице и поставить 301 — тогда вы не потеряете этот поток.
Отдельный сценарий — реклама. Если на удалённую страницу ведёт объявление в Яндекс Директе или другой рекламной системе, вы платите за переходы на страницу «удалено». Перед удалением замените адрес в объявлениях на нужный.
Ошибка 410 в логах сервера
В журнале доступа nginx или Apache 410 виден в поле кода ответа рядом с адресом. Если ошибка возникает на адресах, которые вы не удаляли, это повод проверить правила: какое именно из них сработало, обычно видно по шаблону адреса. Если 410 получают в основном роботы по старым адресам — это ожидаемый результат, такие строки можно исключить из мониторинга.
Как проверить код ответа 410
- Через инструменты разработчика. Откройте в браузере вкладку Network и обновите страницу — код виден в столбце Status.
- Через командную строку.
curl -sI https://сайт/адрес/— первая строка ответа покажетHTTP/1.1 410 Gone. - Через SEO-краулер. Программы обхода сайта показывают коды всех страниц сразу — удобно найти лишние 410 после переделки.
- Через Яндекс Вебмастер. Инструмент проверки ответа сервера покажет код так, как его видит робот.
Как исправить ошибку 410
Страница удалена случайно. Восстановите её из резервной копии и уберите правило, которое отдаёт 410. Отправьте адрес на переобход. Если 410 отдавался с кэшем, часть посетителей ещё какое-то время увидит удалённую версию.
У страницы появился новый адрес. Замените 410 на 301 на новый адрес.
Страница удалена навсегда. Ничего исправлять не нужно — это правильный ответ. Сделайте понятную страницу 410 и уберите ссылки.
Код возвращается из-за ошибки сервера или CMS. Проверьте .htaccess, конфигурацию nginx, плагины перенаправлений и SEO-плагины: 410 часто ставит правило с шаблоном, которое захватывает лишние адреса. Если сайт на хостинге с панелью управления, посмотрите и её настройки перенаправлений. После исправления выполните проверку через curl — в результате должен быть код 200 — и отправьте адрес на повторный обход.
Что делать посетителю, если открывается ошибка 410
Если вы не владелец сайта, исправить ошибку на стороне сервера вы не можете. Но кое-что попробовать стоит:
- Проверьте адрес. Возможна опечатка в ссылке — перейдите на главную страницу сайта и найдите нужный раздел через меню или поиск.
- Обновите страницу без кэша (Ctrl+F5) или откройте её в режиме инкогнито. Как показал наш стенд, браузер может показывать старый 410 из кэша, хотя страница уже вернулась. Если помогло — очистите кэш браузера.
- Отключите расширения или попробуйте другой браузер, чтобы исключить причины на своей стороне.
- Посмотрите сохранённую копию в веб-архиве, если вам нужно именно старое содержимое.
- Напишите в поддержку сайта. Если страница нужна, владелец может сообщить новый адрес.
Сменить провайдера или включить VPN обычно бесполезно: 410 — ответ самого сайта, а не блокировка соединения в интернете.
Что означает ошибка 410 на телевизоре или другом устройстве
На телевизорах, приставках и в приложениях «ошибка 410» обычно значит, что сервис закрыл старый адрес или старую версию программы и больше не принимает от неё запросы. Помогает обновить приложение, прошивку или операционную систему: новая версия обращается к актуальным адресам по новому протоколу. Если обновление не устранило проблему, обратитесь в поддержку сервиса.
Источники
- RFC 9110, разделы 15.5.11, 15.5.5, 15.1 — rfc-editor.org
- Google: HTTP status codes and network errors (обновлено 04.02.2026) — developers.google.com
- Яндекс Вебмастер: справочник HTTP-кодов — yandex.ru/support/webmaster
- Apache: mod_alias, флаги RewriteRule — httpd.apache.org
Похожие ошибки
- Страница 404 — как проверить, что сайт правильно отвечает на несуществующие адреса.
- Ошибка 451 — страница закрыта по требованию закона.
- Ошибка 403 — доступ к странице запрещён.
- Редирект 301 или 302 — когда страница переехала.
Границы замера
Стенд — nginx 1.22.1, Apache 2.4.68 и PHP 8.3 в Docker, Chromium 149. Обход 18.10.2026 из Германии, по одному запросу к выдуманному адресу на каждом сайте. Как быстро Google и Яндекс убирают из индекса страницы с 404 и 410, мы не сравнивали.
Коротко
Ошибка 410 Gone — страница удалена навсегда, и владелец сделал это намеренно. Её используют для закончившихся акций, снятых товаров и закрытых разделов. Если неизвестно, навсегда ли пропала страница, нужен 404, а если есть замена — 301. Google обрабатывает 410 так же, как 404. Настраивается код одной строкой в nginx, Apache или PHP, но страницу 410 лучше сделать своей и не ставить на неё долгий кэш.
