Как скрыть карту сайта от посетителей

1 23
Антоний Казанский
На сайте с 12.04.2007
Online
788
#21
WantNight #:
Это Вы так решили?)

Это рекомендация ПС предоставлять XML карту в свободном доступе.


WantNight #:

На многих проектах закрываю карту для обычных юзеров.

Я такого же мнения, что и ТС. Карта и другие системные разделы (для ПС) должны быть закрыты и быть только для ПС.

Отдельные персональные мнения и выводы иметь никто не запрещает :)

Можно направлять свои усилия в то, чтобы запретить пользовательский доступ к XML карте, к robots.txt и разным другим разделам, но это из разряда кто во что горазд.

Ключевой момент в том, что для более-менее серьёзного парсинга отдельный XML и не обязателен.

Программный парсинг рабочих страниц можно выполнить и Xenu, и Frog-ом в обход XML карты, - я уж не говорю о более серьёзных инструментах типа A-parser, Zennoposter-а и прочих экзотических вещей, включая самописные парсеры.

Да, коллеги выше порекомендовали варианты черeз CF, через соответствия User-Agent-а в htaccess и прочие варианты уже через php проверку, но это не спасёт от серьёзного намерения спарсить.

p.s. Если уж хотите спрятать XML карту от пользователей - используйте нестандартное название и не прописывайте её в robots.txt. Эта самая простая мера без всяких проверок и CF.

√ SEO продвижение ► https://akazansky.ru - экспертный аудит сайтов ( https://akazansky.ru/audit-sajtov ), внедрение эффективных решений цифрового маркетинга. Разговоры о SEO и не только: культурно, вежливо, доброжелательно ► https://t.me/seotusovochka
Антоний Казанский
На сайте с 12.04.2007
Online
788
#22
sergv #:
Кому нужна карта - забьют урл в сервис, тот пробежится по сайту, создаст карту и отдаст файлик запрашиваемому. Ну а дальше он сделает то, что собирался ) Поэтому, карта есть у нуждающихся даже в том случае, когда ее вообще не существует ) Дело нескольких минут.

Именно. Проблема мне тут видится в другом, проблема в том, что TC серьёзно уверен, что для парсинга нужна XML карта.

А дело не в ней, дело в том, то пользователь в любом случае может получить навигационную структуру сайта. А дальше уже хоть с XML картой, хоть без неё.

p.s. Вот определить квоту запросов для отдельного IP - это уже более серьёзная мера, хотя и она профессионалом своего дела решится (последовательным использованием прокси адресов).

K4
На сайте с 29.01.2020
Offline
83
#23
webinfo #:

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

Так откуда они знают, что стоит такое ограничение, обычно видят 404 ошибку и делают выводы, что сайт без карты.

W1
На сайте с 22.01.2021
Offline
306
#24
Kykapa4a #:
обычно

Необычно.
Гораздо более обычно наблюдать в логах всяких разных ботов, у которых в UA прописаны яндексы и гуглы.

Мой форум - https://webinfo.guru –Там я всегда на связи
K4
На сайте с 29.01.2020
Offline
83
#25
Антоний Казанский #:

Вы придумываете себе совершенно ненужные задачи.

Совершенно не согласен, в карте парсер получает "очищенные" данные, которые необходимо скопировать без всякого мусора - страницы с пагинацией, фильтрами  и т.д..   Если закрыть доступ(спрятать) к карте, то парсеру придется сделать существенное кол-во запросов к сайту, из-за той же пагинации. Ну а дальше все просто - превышение запросов, врубаем подмену данных.  

W1
На сайте с 22.01.2021
Offline
306
#26
Kykapa4a #:
Ну а дальше все просто - превышение запросов, врубаем подмену данных

А если вдруг робот гуглояндексов решит пройтись по пагинации или фильтрам - а тут подмена данных? Что мы увидим в качестве страниц сайта?

Простота - хуже воровства (С).

K4
На сайте с 29.01.2020
Offline
83
#27
webinfo #:

А если вдруг робот гуглояндексов решит пройтись по пагинации или фильтрам - а тут подмена данных? Что мы увидим в качестве страниц сайта?

Так тот же фильтр по UA с проверкой маски гугла и яндекса. Ладно, коллеги, я не вебмастер, а программист(c#) не надо меня слушать. :)

if (!IpAddressExtensions.IsInSubnet(IPAddress.Parse(Request.UserHostAddress), "66.249.64.0/19") &&
                            !IpAddressExtensions.IsInSubnet(IPAddress.Parse(Request.UserHostAddress), "5.255.231.0/24") &&
                            !IpAddressExtensions.IsInSubnet(IPAddress.Parse(Request.UserHostAddress), "213.180.203.0/24") &&
                            !IpAddressExtensions.IsInSubnet(IPAddress.Parse(Request.UserHostAddress), "5.45.207.0/24") &&
                            !IpAddressExtensions.IsInSubnet(IPAddress.Parse(Request.UserHostAddress), "87.250.224.0/24") &&
                            !IpAddressExtensions.IsInSubnet(IPAddress.Parse(Request.UserHostAddress), "95.108.213.0/24") &&
                            !IpAddressExtensions.IsInSubnet(IPAddress.Parse(Request.UserHostAddress), "5.255.253.0/24") &&
                    !IpAddressExtensions.IsInSubnet(IPAddress.Parse(Request.UserHostAddress), "141.8.142.0/24") &&
                            _repository.GetBotIp(Request.UserHostAddress) == null
                            )
W1
На сайте с 22.01.2021
Offline
306
#28
Kykapa4a #:
Так тот же фильтр по UA

Уже отвечал:

webinfo #:

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

Kykapa4a #:
Request.UserHostAddress

Про это тоже писал:

webinfo #:
Единственный способ - раздобыть все IP поисковиков и разрешать доступ только с этих IP.

Однако замучаешmься все IP добывать поисковики их не афишируют дабы выявлять клоакинг и подобные "хитрости". В результате можешь либо нарваться на фильтр, либо забанить поискового робота.

Kykapa4a #:
я не вебмастер, а программист

А это как раз вопрос программиста, а не вебмастера.

Антоний Казанский
На сайте с 12.04.2007
Online
788
#29
Kykapa4a #:
Совершенно не согласен, в карте парсер получает "очищенные" данные, которые необходимо скопировать без всякого мусора - страницы с пагинацией, фильтрами  и т.д..

Формально - да, но на мой взгляд вы преувеличиваете потенциальную полезность XML для стороннего парсера.

Во-первых, мы изначально не знаем что/в каком объёме/какой периодичности будет парситься контент.

Я вообще сомневаюсь, что те кто занимаются парсингом нацеленно ищут XML файл хотя бы потому что:

а) он не всегда есть

б) он не всегда корректно сгенерирован

в) он не всегда содержит актуальные данные.

Во-вторых, при парсинге можно настроить рабочие критерии (рабочее пространство по URL, отсечь параметры и т.д.)


Kykapa4a #:
Если закрыть доступ(спрятать) к карте, то парсеру придется сделать существенное кол-во запросов к сайту

Это вызывает какие-то дополнительные сложности?

Условно, если мы несколькими кликами мышки запустим тот же доступный Xenu и пробежимся по сайту TC, какое-либо существенное кол-во запросов к сайту нас остановит?


Kykapa4a #:
а дальше все просто - превышение запросов, врубаем подмену данных.  

Вы уверены, что будет какое-то дальше?

Я например думаю, что прочитав первые ответы TC вероятно и не вернется в тему (как это нередко бывает).

1 23

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий