Сайты с ИИ2026-08-0511 минНатали Анарбаева

Запрет сайта: как закрыть доступ и индексацию в 2026

Запрет сайта: как закрыть доступ и индексацию в 2026

Закрыть сайт можно на трёх уровнях: от посторонних людей (пароль или доступ по списку адресов), от поисковых систем (robots.txt, noindex) и от лишнего трафика по географии. Это разные настройки, и путать их дорого: сайт, закрытый только в robots.txt, может остаться в выдаче, а сайт с забытым noindex не попадёт туда никогда. Ниже готовые конфигурации под каждый случай, чек-лист обратного открытия и отдельный блок про то, как ограничить доступ к чужому сайту на своих устройствах.

Три разных запрета, которые часто путают

Прежде чем править конфиг, определите, от кого закрываете сайт. От этого зависит инструмент.

  • Запрет для людей: сайт не открывается никому, кроме тех, у кого есть пароль или чей IP-адрес в списке. Работает на уровне веб-сервера, роботы тоже не пройдут.
  • Запрет показа в поиске: сайт открыт всем, но не должен появляться в выдаче. За это отвечает метатег noindex или заголовок X-Robots-Tag.
  • Запрет обхода: файл robots.txt просит роботов не сканировать страницы. Это просьба не ходить, а не запрет показывать.
  • Фильтр по географии и адресам: правило на сервере или в Cloudflare, когда мешают боты и трафик из ненужных стран.

Как закрыть сайт от посторонних на время разработки

Самый надёжный вариант для сайта в работе: базовая HTTP-авторизация. Браузер спрашивает логин и пароль до того, как отдать хоть одну страницу, поэтому внутрь не попадут ни случайные посетители, ни роботы. На большинстве хостингов это делается в панели («защита директории паролем»), а на своём сервере двумя директивами.

  1. Создайте файл с паролями утилитой htpasswd (пакет apache2-utils в Ubuntu). Флаг -c нужен только при создании первого пользователя, иначе файл перезапишется.
  2. Пропишите в нужном блоке nginx директивы auth_basic и auth_basic_user_file, как в документации nginx.
  3. Проверьте конфигурацию командой nginx -t и перечитайте её: systemctl reload nginx.
  4. Откройте сайт в режиме инкогнито и убедитесь, что появляется окно с логином и паролем.
sudo apt install apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd anna

# /etc/nginx/sites-enabled/example.conf
server {
    location / {
        auth_basic           "Site is closed";
        auth_basic_user_file /etc/nginx/.htpasswd;
        try_files $uri $uri/ /index.html;
    }
}

На хостингах с Apache то же самое делается файлом .htaccess в корне сайта или в закрываемой папке, по официальной инструкции Apache. Путь к файлу паролей должен быть абсолютным, а сам файл лучше держать выше корня сайта, чтобы его нельзя было скачать.

AuthType Basic
AuthName "Site is closed"
AuthUserFile /home/user/.htpasswd
Require valid-user

Если сайт нужен только вам и паре коллег с постоянными адресами, вместо пароля удобнее список IP. В nginx за это отвечает модуль access с директивами allow и deny, правила читаются сверху вниз.

location / {
    allow 203.0.113.25;   # офис
    allow 198.51.100.7;   # дом
    deny  all;
}

Домашний интернет обычно выдаёт динамический адрес, который меняется после перезагрузки роутера, поэтому список IP хорош для офиса и сервера, а для команды на разных устройствах надёжнее пароль. Подробный разбор вариантов с паролем, включая закрытие одной страницы, у нас есть в статье про то, как поставить пароль на сайт.

Закрытый сайт нужен ради того, что на нём появится. На бесплатном эфире показываем, как собрать рабочий сайт с ИИ и довести его до людей.

Занять место

Страница «идут работы» и код 503

Пароль подходит для сайта, которого ещё нет в поиске. Если сайт уже проиндексирован, а вы закрываете его на несколько часов ради обновления, отдавать поисковым роботам ошибку 404 или пустую страницу нельзя: они решат, что страниц больше нет. Правильный ответ на время работ это код 503 Service Unavailable вместе с заголовком Retry-After, который говорит, когда возвращаться.

server {
    location = /robots.txt {
        root /var/www/example;   # robots.txt должен отдаваться как обычно
    }

    location / {
        return 503;
    }

    error_page 503 @maintenance;
    location @maintenance {
        root /var/www/maintenance;
        rewrite ^ /index.html break;
        add_header Retry-After 3600 always;
    }
}

Два правила, которые легко нарушить. Первое: файл robots.txt во время работ должен отдаваться обычным кодом 200, иначе робот перестанет сканировать сайт целиком. Второе: 503 это мера на часы, максимум на пару дней. Google прямо называет полное отключение сайта крайней мерой на очень короткий срок и предупреждает, что закрытие даже на несколько недель бьёт по индексации (справка Google Search Central).

Если работы затягиваются, лучше оставить сайт живым и ограничить функциональность: убрать корзину, повесить баннер с датой возврата, отключить формы. Так страницы остаются в поиске, а люди понимают, что происходит.

По теме: Программа для создания сайта в 2026: что ставить на компьютер

Как закрыть сайт от поисковых систем

Здесь и живёт главная путаница. Файл robots.txt управляет обходом, а не показом. Яндекс формулирует это прямо: ограниченные в robots.txt страницы могут участвовать в поиске, и чтобы удалить их из выдачи, нужна директива noindex в коде страницы или в HTTP-заголовке (Вебмастер, справка про robots.txt). У Google логика та же: если страница закрыта в robots.txt, робот не загрузит её и не увидит noindex, а адрес может показаться в выдаче по внешним ссылкам (Google Search Central).

Отсюда практический вывод: запрет в robots.txt и noindex вместе не работают. Выбирайте одно из двух. Нужно закрыть сайт от сканирования целиком (тестовый домен, копия, черновик): достаточно robots.txt. Нужно, чтобы страницы точно исчезли из выдачи: оставляйте их открытыми для робота и ставьте noindex.

# robots.txt: закрыть весь сайт от обхода
User-agent: *
Disallow: /

Метатег ставится в <head> каждой страницы, которую нужно убрать из выдачи. Значение noindex запрещает показ, nofollow дополнительно просит не переходить по ссылкам.

<meta name="robots" content="noindex">
<meta name="robots" content="noindex, nofollow">

Для файлов без HTML-кода (PDF, картинки, архивы) метатег вставить некуда, там работает заголовок ответа X-Robots-Tag с тем же значением (спецификация Google). В nginx он добавляется для нужного пути одной строкой.

location /docs/ {
    add_header X-Robots-Tag "noindex" always;
}

Отдельная тонкость про тестовые копии сайта. Держать их закрытыми только через robots.txt рискованно: файл публичный, а адрес копии всё равно попадает в чужие логи и ссылки. Тестовый домен спокойнее закрывать паролем, тогда вопрос индексации снимается сам собой.

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

Записаться на эфир

Закрыть отдельные разделы, админку и формы

Целиком сайт закрывают редко, чаще нужно спрятать часть. Разделите задачи так.

  • Служебные разделы (админка, кабинет, черновики) закрывайте авторизацией, а не строчкой в robots.txt: этот файл открыт всем, и перечисленные пути превращаются в подсказку, куда стучаться.
  • Технические страницы (внутренний поиск, сортировки, версии для печати) уводите из выдачи метатегом noindex, оставляя их доступными людям.
  • Служебные файлы (.env, логи, дампы базы, бэкапы) закрывайте по маске прямо в конфиге сервера.
  • Формы защищайте скрытым полем-ловушкой и ограничением частоты отправки: капча отпугивает и живых людей, а простые фильтры срезают большую часть спама.
location /admin/ {
    auth_basic           "Admin area";
    auth_basic_user_file /etc/nginx/.htpasswd;
}

location ~* \.(env|log|sql|bak)$ {
    deny all;
}

Если админка или личный кабинет пишутся с нуля, доступ разумнее закладывать сразу на уровне приложения: роли, вход по паролю, ограничение на количество попыток. Как это устроено, мы разбирали в материале про то, как сделать регистрацию и вход на сайте. А куда уходят заявки и как не потерять их из-за спам-фильтра, есть в статье про сайт с формой заявки.

По теме: Как загрузить готовый сайт в интернет в 2026: хостинг и домен

Ограничение по географии и по ботам

Иногда сайт должен работать только для одной страны: так режут нагрузку от парсеров и спам из-за рубежа. Проще всего это делается на стороне Cloudflare, куда сайт заводится бесплатно. В разделе правил безопасности создаётся custom rule с полем ip.src.country, пример выражения приводит документация Cloudflare.

(ip.src.country in {"KP" "SY"})

# обратная логика: пускать только Россию и Беларусь
(ip.src.country ne "RU" and ip.src.country ne "BY")

Два предупреждения. Определение страны по IP приблизительное, мобильный интернет и VPN легко ломают картину, поэтому обратную логику («пускать только своих») применяйте осторожно: под запрет попадут и реальные посетители. И не режьте по географии роботов Яндекса и Google: их серверы находятся не там, где ваша аудитория, а сайт после такого выпадает из поиска.

Как открыть сайт обратно и не потерять поиск

Самая частая беда со всей этой темой не в том, что сайт не закрыли, а в том, что забыли открыть. Сайт запустился, реклама идёт, а в поиске его нет, потому что с этапа разработки остался noindex или Disallow: /. Пройдите список сверху вниз.

  1. Уберите из robots.txt строку Disallow: / и проверьте файл валидатором в Яндекс Вебмастере и в Search Console.
  2. Найдите по коду шаблона все noindex: и метатеги, и заголовок X-Robots-Tag, и галочку «попросить поисковые системы не индексировать» в конструкторе или в CMS. В WordPress это отдельный чекбокс в настройках чтения.
  3. Снимите пароль и правила deny, а страницу работ отключите, вернув обычный код 200 вместо 503.
  4. Проверьте одну страницу командой curl -I с адресом сайта и посмотрите, что в ответе нет заголовка X-Robots-Tag, а код именно 200.
  5. Отправьте сайт на переобход: в Яндекс Вебмастере через «Переобход страниц», в Search Console через проверку URL и кнопку запроса индексирования.

Обратная задача, убрать уже проиндексированные страницы побыстрее, решается инструментами вебмастера. Яндекс принимает до 500 адресов одного сайта в сутки и до 20 префиксов, а удаление проходит в течение суток, но страница должна быть закрыта noindex, отдавать 404, 403 или 410 либо быть запрещена в robots.txt (справка Вебмастера). В Google инструмент удаления прячет адрес примерно на шесть месяцев, а чтобы удаление стало постоянным, страницу нужно действительно убрать или закрыть (справка Search Console). Что делать наоборот, когда сайт нужно как можно быстрее показать поиску, мы описали в материале про то, как сделать сайт активным.

По теме: Excel на сайте в 2026: как вывести таблицу и собирать заявки

Как ограничить доступ к чужому сайту на своей стороне

Второй смысл этой задачи бытовой: закрыть ребёнку или себе доступ к конкретным сайтам на домашних устройствах. Речь именно про свои устройства и родительский контроль, а не про обход чьих-либо законных ограничений.

  • Роутер. В большинстве домашних роутеров есть раздел родительского контроля или фильтрации URL: правило действует на все устройства в квартире.
  • DNS с фильтрацией. Бесплатный Яндекс DNS в семейном режиме (адреса 77.88.8.7 и 77.88.8.3) отсекает сайты для взрослых на уровне сети, адреса прописываются в роутере или в настройках подключения.
  • Android и аккаунт Google. Family Link разрешает и блокирует конкретные сайты в Chrome и включает фильтр взрослого контента (справка Google).
  • iPhone и iPad. Настройки, «Экранное время», «Ограничения контента и конфиденциальности», «Веб-содержимое»: есть общий фильтр и списки разрешённых и запрещённых адресов (справка Apple).
  • Windows. Microsoft Family Safety фильтрует сайты только в Microsoft Edge, а остальные браузеры при включённой фильтрации блокируются целиком (справка Microsoft).

Способ с файлом hosts на компьютере тоже работает, но обходится за минуту любым, кто знает про него, поэтому как родительский контроль он ненадёжен. Фильтр на роутере или через DNS честнее: его сложнее отключить незаметно, и он покрывает все устройства сразу.

Частые вопросы

Как полностью закрыть сайт от индексации?

Если сайт ещё не в поиске, хватит robots.txt с Disallow: /, а надёжнее закрыть его паролем. Если страницы уже в выдаче, оставьте их доступными роботу и поставьте noindex: только так поисковая система узнает о запрете и уберёт страницы.

Почему страницы закрыты в robots.txt, а в поиске они есть?

Потому что robots.txt запрещает обход, а не показ. Робот не заходит на страницу, но знает её адрес по внешним ссылкам и может показать его в выдаче без описания. Уберите запрет из robots.txt и добавьте на страницу noindex.

Можно ли закрыть сайт паролем без программиста?

Да. У большинства хостингов в панели есть пункт «защита директории паролем», где достаточно указать логин и пароль. В конструкторах вроде Тильды или Craftum пароль ставится на страницу или на сайт в настройках доступа, без правки файлов.

Что выбрать на время переделки сайта: пароль или 503?

Пароль, если сайт новый и в поиске его ещё нет. Код 503 с заголовком Retry-After, если сайт уже проиндексирован и закрывается на несколько часов. Затягивать с 503 нельзя, для долгих работ лучше оставить упрощённую рабочую версию.

Как проверить, что запрет действительно сработал?

Откройте сайт в режиме инкогнито и с телефона по мобильному интернету, чтобы не попасть в собственные разрешения. Ответ сервера смотрите командой curl -I с адресом страницы, а индексацию проверяйте инструментами «Проверка URL» в Search Console и «Проверить статус страницы» в Яндекс Вебмастере.

Закрывать и открывать сайт проще, когда понимаешь, как он устроен изнутри. На бесплатном воркшопе по сайтам с ИИ показываем весь путь: собрать страницу, выложить её и настроить доступ так, как нужно вам.

Занять место
Разборы, кейсы и фишки вайбкодинга каждую неделю в телеграм-канале «Яков вайбкодит».
Первый проект с ИИ: живой разбор, бесплатно Занять место