Хорошая тема. Любые вопросы по CS-Cart и не только

У меня хостер ленивый, у него зимой снега не допросишься. :no_mouth:

Смотреть в access.log или error.log? Или же вы имели ввиду другое?

access.log

Тут. Найдите время по логам, когда возникла проблема, и проверьте количество записей. Если записей много за короткий промежуток, то это причина падения.

В статистике использования системных ресурсов показан пик в 03:00:00, в файле access.log в промежуток с 03:00:02 до 03:28:00 нашел только заходы бота ahrefs.com/robot/ и больше ничего в это время нет.
Это значит, что этот бот кладет сайт?

Вполне возможно. В robots.txt можно задать директиву crawl-delay для всех ботов, кроме яндекса и гугла, чтоб был промежуток времени между сканированием страниц.
А «плохих» ботов нужно отсеивать через веб-сервер.

Это как? Я не в курсе такого.

Если у вас обычный виртуальный хостинг, то можно так, как пример: https://technohead.net/servers/how-to-block-bad-bots.html
Боты из этого списка будут отсеиваться и не создавать лишнюю нагрузку на сайт.

Вот так добавить?
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^AhrefsBot
RewriteRule ^.* - [F,L]

Наткнулся на Хабре на мануал по автоблокировке ботов. Только вот жаль, что сам не сумею приладить эту полезную машинку, не секу в базах данных. Если кто силен, то возьмите себе на заметку. :+1:


Кстати, может быть кто-то сумеет прикрутить этот шедевр на свой сайт, тогда поделитесь решением с сообществом, как для CS-Cart создать правильные таблицы БД и тд. :wink:

Я не силен в директивах .htaccess, точно, к сожалению, не подскажу.

Под это дело модуль есть: https://www.cs-commerce.com/ru/ban-bots-addon-for-cs-cart.html?currency=RUB

Все бы хорошо, но проку от него нет, вручную вставлять можно и без модуля прямо в htaccess. Чтобы с ботами бороться эффективно, нужен модуль автоблокировки ботов. К тому же их миллион, жизнь потратишь вручную вставлять. Это же надо сперва логи перерыть, чтобы название бота скопировать, а потом еще и вписать в модуле, кроме того сколько времени убьешь, в итоге плюнешь на этот дурдом. :grin:

В виде эксперимента протестировал на Яндексе указав в .htaccess директиву запрета посещения сайта:

SetEnvIfNoCase User-Agent “YandexBot” bad_bot
<Limit GET POST HEAD>
Order Allow,Deny
Allow from all
Deny from env=bad_bot
</Limit>

И не могу в толк взять вот что. Если в логе отображался куча строк бота Яндекса, значит он что-то вынюхивает. Делаю ему запрет и по прежнему в логе куча строк с ботом Яндекса. Разница лишь в том, что до запрета в логе у бота код ответа сервера 200, а после запрета код ответа 403 (См. скриншот).

Я собрался сделать запрет плохим ботам, чтобы они не жрали ресурсы и предполагал, что если сделать им запрет, то и в логах будет чище. Но нифига. Так вот в чем вопрос. Мне переживать не надо от того, что лог будет продолжать быть загажен всякой нечестью? Ресурсы от этого не жрутся?

Есть огромное количество запросов которые вызовут нереальную загрузку, даже досить не нужно, с мобильника можно уложить любой магазин, сам проверял даже успешные, колом встают 99.9%

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

Забанил всех злых ботов в .htaccess, а в robots.txt перекрыл кислород послушным поисковикам. Нагрузка снизилась примерно с 20.000 почти до 100. Что дает оставшиеся 100 пока не могу найти.

2 лайка

Запретить ботам опрашивать адреса никто не может, другое дело, если раньше бот постучался и сервер ему ответил 200 (все ОК, получай страницу) и скачивал страницу, то теперь он стучится и получает ответ 403 (доступ запрещен) и сервер не отдает ему контент.

Ресурсы используются в любом случае, так как на веб-сервер поступает активное подключение. Если вопрос принципиален, можно через iptables + ipset + fail2ban блокировать на уровне фаервола.

Здравствуйте, добавил свое поле в документы, и заметил, что когда приходит заказ, то в письме его нет
Пробую у этого же заказа распечатать счет, поле есть

Что за странность такая?

В системе есть два документа: счет и заказ. Видимо в Счет вы его вставили, а в Детали заказа - нет. Посмотрите что у вас стоит в Поле Счет/Кредитное извещение при редактировании Статуса заказа - Счет или Заказ

При очередном обновлении в логе вылезает ошибка:

2020-02-17 02:51:24: Backing up files and database
2020-02-17 02:51:24: backup via mysqldump is disabled by config

Обновление не производится. Галочки не делать резервную копию нет. Что это может быть и как лечить?