robots.txt обрабатывает $
как специальный символ для идентификации конца рисунка.
Хотя, Googlebot является разбор некоторых hrefs из шаблонов JS внутри тегов сценария например:
<a href="${object.path}"> ${object.name}</a>
После кодирования его, Google бот пытается достичь mySite.com/$%7Bobject.path%7D
, который заканчивается в 404-х.
Чтобы обойти это, я хочу отключить такие URL-адреса от обхода, добавив соответствующую директиву в свой файл robots.txt.
Но используя $ «как есть», не работает:
Disallow: /$%7Bobject.path%7D$
Единственный рабочий раствор я нашел, чтобы использовать символ подстановки:
Disallow: /*%7Bobject.path%7D$
Хотя, я на самом деле Любопытно, есть ли способ избежать этого знака $?
Спасибо.
EDIT:
Ну после того, как еще несколько испытаний с помощью инструмента robots.txt тестирования Google У меня есть некоторые странные результаты. В соответствии с этим инструментом директива:
Disallow: /*%7Bobject.path%7D$
не будет работать на /$%7Bobject.path%7D
в то время как другие инструменты, говорит мне, что он соответствует (как https://technicalseo.com/seo-tools/robots-txt/).
Что работает в инструмент тестирования Google, ставит скобки Unencoded в директиве:
Disallow: /*{object.path}$
Я не могу сделать какой-то смысл из него, так что я положил обе версии в моем файле robots.txt.
Я боюсь, что не будет соответствовать, так как Google бот не Percent закодировать $ полукокса: / – gonzoyumo