Как остановить поисковые системы от сканирования всего сайта? - PullRequest
14 голосов
/ 02 февраля 2012

Я хочу запретить поисковым системам сканировать весь мой сайт.

У меня есть веб-приложение, которое могут использовать члены компании.Это размещено на веб-сервере, так что сотрудники компании могут получить к нему доступ.Никто другой (публика) не нуждался бы в этом или не нашел бы его полезным.

Итак, я хочу добавить еще один уровень безопасности (в теории), чтобы попытаться предотвратить несанкционированный доступ, полностью удалив доступ к нему всех ботов / сканеров поисковых систем.Индексировать наш сайт в Google, чтобы сделать его доступным для поиска, бессмысленно с точки зрения бизнеса, и он просто добавляет хакеру еще один способ найти сайт, чтобы попытаться взломать его.

Я знаю в robots.txtВы можете указать поисковым системам не сканировать определенные каталоги.

Можно ли сказать ботам, чтобы они не сканировали весь сайт без необходимости перечисления всех каталогов, которые не нужно сканировать?

Это лучше всего делать с robots.txt или лучше с помощью.htaccess или другой?

Ответы [ 3 ]

12 голосов
/ 02 февраля 2012

Лучше всего обрабатывать файл robots.txt, только для ботов, которые его уважают.

Чтобы заблокировать весь сайт, добавьте это в robots.txt в корневом каталоге вашего сайта:

User-agent: *
Disallow: /

Чтобы ограничить доступ к вашему сайту для всех остальных, .htaccess лучше, но вам необходимо определить правила доступа, например, по IP-адресу.

Ниже приведены .htaccess правила, запрещающие всем, кроме ваших сотрудников, IP-адрес вашей компании:

Order allow,deny
# Enter your companies IP address here
Allow from 255.1.1.1
Deny from all 
8 голосов
/ 02 февраля 2012

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

Если это может быть проблемой для вас, решение состоит в том, чтобы не использовать robots.txt, а вместо этого включить метатег robots со значением noindex,nofollow на каждой странице вашего сайта. , Вы даже можете сделать это в файле .htaccess, используя mod_headers и заголовок HTTP X-Robots-Tag:

Header set X-Robots-Tag noindex,nofollow

Эта директива добавит заголовок X-Robots-Tag: noindex,nofollow к каждой странице, к которой она применяется, включая страницы, отличные от HTML, например изображения. Конечно, вы также можете включить соответствующий метатег HTML, на всякий случай (это более старый стандарт, и, вероятно, более широко поддерживаемый):

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

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

В любом случае, что бы вы ни делали, имейте в виду, что трудно сохранить секретный сайт очень долго. Со временем вероятность того, что один из ваших пользователей случайно утечет ссылку на сайт, приближается к 100%, и если есть основания полагать, что кому-то будет интересно найти сайт, вы должны предположить, что это произойдет. Таким образом, убедитесь, что вы также установили надлежащий контроль доступа на своем сайте, обновляете программное обеспечение и регулярно выполняете проверки безопасности на нем.

0 голосов
/ 23 марта 2017

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

Это будет означать, что любой (google, бот, человек, который наткнулся на ссылку), который не прошел проверку подлинности, не сможет получить доступ к вашим страницам.

Вы можете встроить его в свой веб-сайт или использовать обычную аутентификацию HTTP.

https://www.httpwatch.com/httpgallery/authentication/

...