файл robots.txt

Добрый день!

Есть проблема с роботом Яндекса. Образовалась после приобретения SSL сертификата. И настройки файла  .htaccess 

Здесь на форме есть ответ на аналогичную проблему но мне не помогло.

При анализе "Анализ robots.txt" выдает сообщение, что сервер отвечает редиректом на запрос robots.txt  Либо в почту пришло сообщение, что не видит файл.

В настройках приложения "сайт" - настройки" добавил в код робота:

Не помогло

Потом На хостинге в файл .htaccess добавил  код на запрет роботу делать переадресацию (4 строка).

RewriteEngine On
RewriteCond %{ENV:HTTPS} !on
RewriteRule ^.*$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{REQUEST_URI} !robots.txt
<FilesMatch "\.md5$">
Deny from all
</FilesMatch>
DirectoryIndex index.php
Options -Indexes
# Comment the following line, if option Multiviews not allowed here
Options -MultiViews
AddDefaultCharset utf-8
<ifModule mod_rewrite.c>
RewriteEngine On
# Uncomment the following line, if you are having trouble
#RewriteBase /
RewriteCond %{REQUEST_URI} !\.(js|css|jpg|jpeg|gif|png)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [L,QSA]
</ifModule>
<ifModule mod_headers.c>
<FilesMatch "\.(jpg|jpeg|png|gif|js|css)$">
Header set Cache-Control "max-age=3153600, public"
</FilesMatch>
</ifModule>

Не помогло. Причем у меня 2 таких файла. Один лежит в папке  /home/rasty-nn/rasty-nn/docs Другой на уровень выше. Но переадресацию делает который в папке docs 

Но в вебмастере статистика по посещаемости ведется.

Прошу помощи.

Спасибо!

4 ответа

  • 2
    DES Партнер-разработчик 3 декабря 2018 13:25 #

    Файл robots.txt должен быть доступен по http, а не по https. 

  • 1
    АлексК 3 декабря 2018 13:42 #

    спасибо, а где это сделать?

    Ведь в файле .htaccess я делаю запрет.

    • +1
      Antonio Antonio 3 декабря 2018 14:05 #

      Пробовал разные варианты и у меня такая схема работает в .htaccess

      RewriteCond %{HTTP:HTTPS} !=on [NC]
      RewriteCond %{REQUEST_URI} !robots.txt
      RewriteRule ^(.*)$ https://твой-домен.ru/$1 [R=301,L]
      SetEnvIf X-Forwarded-Proto https HTTPS=on


      robots.txt должен быть один и лежать в папке public_html на сервере.

      После этого в webasyst, в настройках сайта будет, как на скрине:

      Из Вебмастера удалять сайт на http// не надо. Постепенно вся статистика перейдёт на https//

  • 2
    DES Партнер-разработчик 3 декабря 2018 14:01 #

    RewriteCond

    должно быть перед 

    RewriteRule

    • +1
      АлексК АлексК 3 декабря 2018 14:31 #

      Переставил строки, не сработало - в вебмастере в 

      Анализ robots.txt пишет что сервер отвечает редиректом на запрос

      После внесения  в файле  .htaccess изменеий (на верные) в вебмастере при анализе робота сразу должно быть положительный ответ, или есть задержка? 

      Сейчас на хостинг еще напишу запрос, может есть другой код. Спасибо!

      • +3
        DES DES Партнер-разработчик 3 декабря 2018 14:54 #

        У Вас robots.txt доступен только по https:

        https://www.rasty-nn.ru/robots...

        А нужно, чтобы был доступен по:

        http://www.rasty-nn.ru/robots....

        Проверьте. При переходе по этой ссылке действительно файл недоступен. Идёт редирект на 404 страницу.

        Редирект всего, кроме robots.txt должен быть настроен в .htaccess примерно так:

        RewriteCond %{HTTPS} =off
        RewriteCond %{REQUEST_URI} !^/robots.txt
        RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,R=301,L]

        Но попробуйте вообще удалить из .htaccess эти правила и включить https редирект в настройках движка.

        • +1
          АлексК АлексК 4 декабря 2018 11:36 #

          Как-то интересно стало...

          После настройки в приложении сайт, и удаления кода переадресации в файле .htaccess  - в Вебмастере вижу файл роботс и в нем код, через гугл -хром  по прямой ссылке на робота по http -404 ошибка. А в яндекс браузере по http - все нормально. Может кто дать комент?

          • +2
            DES DES Партнер-разработчик 4 декабря 2018 20:25 #

            У меня файл robots.txt доступен по http и в хроме:

            http://www.rasty-nn.ru/robots....

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

            Кстати, не нужно в robots.txt два раза дублировать одинаковый User-agent:

            http://prntscr.com/lqo7z7

  • 1
    АлексК 3 декабря 2018 15:44 #

    Спасибо! Станислав, в файле .htaccess убрал строки с переадресацией с http на https и строку для робота. В приложении "Сайт" - Настройки -Безопасность поставил галку  "Перенаправлять на HTTPS". Там же в системных настройках указан сайт "http://www.rasty-nn.ru/", здесь нужно добавлять S?

    Сейчас сайт перенаправляется на https. По ссылкам которые вы мне дали также на робота попадаю через https. Через http - 404 ошибка, но в вебмастере яндекса код стал открываться, не пишет редирикт. Я правильно понимаю что робот будет работать если вебмастер видит его? Спасибо!

    • +2
      DES DES Партнер-разработчик 3 декабря 2018 15:57 #

      в системных настройках указан сайт "http://www.rasty-nn.ru/", здесь нужно добавлять S?

      Не критично, но лучше через "https".

      Я правильно понимаю что робот будет работать если вебмастер видит его?

      Если вебмастер видит, то должно работать...

      • +1
        АлексК АлексК 3 декабря 2018 15:59 #

        Спасибо огромное!

        ...скрин вебмастера не успел доложить....

    • +2
      Antonio Antonio 3 декабря 2018 21:53 #

      Через http должно отправлять на https, а не 404 ошибка. Иначе индексация накроется. 

Добавить ответ

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