Анализ проблемы показывает, что правильный robots.txt может НЕ СПАСТИ ситуацию, несмотря на все заверения пресс-службы Яндекса о том, что во всем виноват только отсутствующий файл robots.txt.
На самом деле проблема гораздо глубже. Вот типичный пример: интернет-магазин, на котором всю работу выполняет ОДИН единственный PHP скрипт, который, при запуске с разными параметрами, генерирует разные страницы сайта:
мойсайт.ру/index.php - главная страница интернет-магазина
мойсайт.ру/index.php?page=about - "страница" о компании
мойсайт.ру/index.php?page=cart&user=pupkin - страница с покупками для пользователя Pupkin.
Как видите, всё содержание сайт генерирует динамически, по информации из своей базы данных и по коду на PHP - и в этом случае глупая запись
Disallow: /cgi-bin/
конечно же не поможет, поскольку такого каталога нет на сайте, или в нем ничего не хранится и так.
Ситуацию может спасти такая запись в robots.txt:
Disallow: /index.php?page=cartно не на долго, потому что если я поменяю порядок параметров в запросе:
мойсайт.ру/index.php?user=pupkin&page=cart
то этот адрес уже не попадет в список запретных для поискового робота.
Самым правильным решением с ложившейся ситуации, на мой взгляд, является разбитие одного PHP скрипта на два: в одном производится работа с общедоступными данными, а второй предназначен исключительно для отображения статуса заказа.
Назвав этот скрипт как mycart.php, мы можем запретить индексировать этот скрипт с любыми вариациями параметров к нему:
Disallow: /mycart.php