У Вас в настройках PHP register_globals=ON? какеры идут к Вам!!!

Файловый Архив

  • Неограниченное количество категорий и суб-категорий
  • Настройки прав доступа по группам
  • Настройки прав доступа по каждой категории
  • Предпросмотр медиа файлов: FLV, IFLV, F4A, F4V, MP4, MP3, MOV и других...
  • Мультизагрузка файлов - SWFUploader
  • Добавление файлов с сервера
Подробности и история обновлений продукта в этой теме
Loading

Go Back   форум vBSupport.org > > >
Register Изображения Меню vBsupport Files Manager Аллея Звёзд Реклама на форуме Search Today's Posts Mark Forums Read
  • Мемберка
  • Администраторам
  • Premoderation
  • For English speaking users
  • Изменения в правах
  • Каталог Фрилансеров
Пароли на скачивание файлов в Member Area меняются автоматически каждый день
Если вам нужно скачать какой то скрипт, за паролем ко мне в ЛС
привет какирам kerk
Ещё раз обращаем Ваше внимание: всё, что Вы скачиваете и устанавливаете на свой форум, Вы устанавливаете исключительно на свой страх и риск.
Сообщество vBSupport'а физически не в состоянии проверять все стили, хаки и нули, выкладываемые пользователями.
Помните: безопасность Вашего проекта - Ваша забота.
Убедительная просьба: при обнаружении уязвимостей или сомнительных кодов обязательно отписывайтесь в теме хака/стиля
Спасибо за понимание
На форуме введена премодерация ВСЕХ новых пользователей

Почта с временных сервисов, типа mailinator.com, gawab.com и/или прочих, которые предоставляют временный почтовый ящик без регистрации и/или почтовый ящик для рассылки спама, отслеживается и блокируется, а так же заносится в спам-блок форума, аккаунты удаляются
for English speaking users:
You may be surprised with restriction of access to the attachments of the forum. The reason is the recent change in vbsupport.org strategy:

- users with reputation < 10 belong to "simple_users" users' group
- if your reputation > 10 then administrator (kerk, Luvilla) can decide to move you into an "improved" group, but only manually

Main idea is to increase motivation of community members to share their ideas and willingness to support to each other. You may write an article for the subject where you are good enough, you may answer questions, you may share vbulletin.com/org content with vbsupport.org users, receiving "thanks" equal your reputation points. We should not only consume, we should produce something.

- you may:
* increase your reputation (doing something useful for another members of community) and being improved
* purchase temporary access to the improved category:
10 $ for 3 months. - this group can download attachments, reputation/posts do not matter.
20 $ for 3 months. - this group can download attachments, reputation/posts do not matter + adds eliminated + Inbox capacity increased + files manager increased permissions.

Please contact kerk or Luvilla regarding payments.

Important!:
- if your reputation will become less then 0, you will be moved into "simple_users" users' group automatically.*
*for temporary groups (pre-paid for 3 months) reputation/posts do not matter.
Не можете скачать вложение?
Изменения в правах групп пользователей
внимательно читаем эту и эту темы
Короткая версия - тут
Уважаемые пользователи!

На форуме открыт новый раздел "Каталог фрилансеров"

и отдельный раздел для платных заказов "Куплю/Закажу"

 
 
Old  
Luvilla
Блондинка с электро......
 
Luvilla's Avatar
Default [Статья] Запланированные задачи, крон: возможные проблемы и решения 30

В рамках программы "Ликбез"

Специально для vBSupport.org


Это обзор для тех, кто только начинает осваивать движок, или никогда не задумывался, что такое "Запланированные задачи" и что за зверь cronimage.
Те, кто сам пишет хаки с собственными кронами, могут с чистой совестью закрыть вкладку
Или дополнить обзор конкретными примерами конкретных задач.

Очень популярно, очень простыми словами.

Давайте для начала ответим на вопрос: что делает форум? "Форум" как движок, а не только место общения по интересам.
Итак...
Форум хранит данные о зарегистрированных (пароли, явки, адреса)
форум считает, сколько кто постов набил
у кого сколько баллов репутации
и умеет по заданным параметрам переводить юзеров из одной группы в другую.
Параметры эти задаются в админке, где-то там, где "Повышения пользователей"

Форум считает, сколько раз просмотрели тему
сколько раз скачали вложение

Форум проверяет, не истёк ли срок пребывания в бане временно заблокированных юзеров
и если истёк - возвращает их из бани

А сколько писем отправляет форум своим верным юзерам... уууууу......
это и подписки на темы/разделы
это и напоминания о событиях - тем, кто умеет пользоваться календарём
это и поздравления с днём рождения
это и напоминания об активации по электронной почте

А сколько работы проводит форум тихо, незаметно...
например, проверяет вложения - точно ли они закреплены за конкретным постом? и если не закреплены - тихо удаляет этот ненужный и неиспользуемый хлам
Оффтоп

Как видим, форум выполняет тяжёлую работу, результаты которой не всегда сразу заметны.
И если что-то сломалось - это тоже не всегда сразу заметно
Как правило, чаще всего юзера/админы замечают, что не обновляются счётчики просмотров тем
Счётчик показывает цифру, равную количеству ответов в теме + 1
И, как правило, многие админы идут в админку, находят пункт "Обновление счётчика просмотра темы" и переключают его на "немедленно"
Так же, как и с "Обновлять счётчик просмотра вложений немедленно"
Это в корне неверно!
Лечить нужно причину, а не следствие.

Прежде всего, следует отметить, что невыполнение любой из перечисленных в списке задач может иметь причиной не только невыполнение крон-задач... "тут возможно наличие более, чем одной неисправности"©
Но, поскольку мы говорим о кроне - будем акцентировать внимание только на нём.

Крон-задачи выполняются при условиях:
- переменная присутствует в шаблоне
- на форум таки заходят не только боты, но и люди
На закрытом форуме запланированные задачи нЕ выполняются

Если вы вдруг заметили, что что-то из перечисленного выше нЕ выполняется, вам следует проверить, а не удалён ли случайно вызов крона из шаблона.

Админка - Стили и шаблоны - дальше как угодно, хоть поиском в шаблонах, хоть через "управление стилями - общие шаблоны" - откройте футер - footer.
У вас обязательно должен присутствовать в футере вот такой код:
HTML Code:
<!-- Do not remove cronimage or your scheduled tasks will cease to function -->
$cronimage
<!-- Do not remove cronimage or your scheduled tasks will cease to function -->
Для 4ки:

HTML Code:
<!-- Do not remove cronimage or your scheduled tasks will cease to function -->
{vb:raw cronimage}
<!-- Do not remove cronimage or your scheduled tasks will cease to function -->
в 5ке... всё вообще нЕ так, и не будем о ней...

комментарии здесь особого значения не имеют, главное, чтобы переменная $cronimage была
Пользуясь случаем, обращаю внимание новоиспеченных админов:
если вы не понимаете, что это за кусок кода в шаблоне - ну не трогайте вы его!!!!
Не трогайте лишний раз даже комментарии в шаблонах, ибо есть хаки, которые цепляются именно к комментариям. Это не говоря уж о том, что комменты написаны там не от балды, а для облегчения понимания...

Идём дальше. Вы убедились, что $cronimage в футере присутствует, но задачи не выполняются.

NEW !!! Поднимите глаза чуть выше строки <!-- Do not remove cronimage... и посмотрите, а не взят ли весь этот кусок в какое-то условие?

пример: стиль Cyborg Dark (Orange Black v2)
этот кусок футера:

HTML Code:
<if condition="$vboptions[copyrighttext]">
<tr>
	<td class="alt1" align="center">
	<!-- Do not remove $cronimage or your scheduled tasks will cease to function -->
	$cronimage
	<!-- Do not remove $cronimage or your scheduled tasks will cease to function -->

	$vboptions[copyrighttext]
	</td>
</tr>
</if>
То есть, если в админке не прописан копирайттекст - условие не выполнено, крон не срабатывает
вынимайте $cronimage из условий или прописывайте копирайттекст

Условий нет? - идём дальше...
Админка - Запланированные задачи - Управление задачами.
Здесь мы видим список всех запланированных задач, которые должен выполнять движок.
Штатная визуализация: если заголовок перечёркнут, значит, задача выключена.
Выключены могут быть крон-задачи, добавленные хаками, если этот хак в данный момент отключен как продукт.
Все остальные кроны нЕ должны быть зачёркнуты, возле активной задачи стоит галочка в чекбоксе.
Прочитайте список. Возможно, кто-то когда-то по неосмотретильности выключил какую-то задачу.
Ежели вдруг такое обнаружится - включите задачу, либо из выпадающего меню - включить, либо проставьте галочку в чекбокс и нажмите "Сохранить статус"

Список штатных запланированных задач:

//Список - для тройки! Для 4ки, в общем, то же самое. Если сьют - там добавляется ежедневная очистка для CMS и несколько задач для блогов//

Если в вашем списке запланированных задач вы не увидели чего-то из приведенного списка...
то, во-первых, хорошо бы выяснить, кто удалил задачу и надавать по рукам...
во-вторых, задачу нужно добавить
Там же, Админка - Запланированные задачи - Управление задачами - жмём "Добавить новую задачу"... ну и, наверное, спрашиваем в этой теме, как восстановить конкретную задачу, ибо не вижу смысла расписывать подробности для всех существующих задач...

Дальше...
если вы зашли в Админка - Запланированные задачи - Управление задачами, сравнили список и убедились, что все задачи на месте, все включены; более того, в колонке "Следующий раз" стоит дата не прошлого столетия, а сегодняшнее число (время, час:мин может быть уже прошедшее, на неактивном форуме такое бывает) - следует проверить ещё один момент.
Откройте дистрибутив includes/cron - это отдельные файлики для каждой отдельной задачи.
Идите к себе на фтп, includes/cron и сравнивайте список
Как ни парадоксально это звучит - да, может быть так, что отсутствует какой-то файл крона, но никаких ошибок не выводится
Если обнаружили пропажу файла - ессно, залейте его... а лучше просто перезалейте все файлы - если есть подозрение, что какой-то файл мог быть повреждён

===
По крону - это, пожалуй, всё
Если всё проверили, всё на месте, но проблема осталась - значит, искать нужно в другом месте.

Небольшой блиц возможных проблем.

Не отсылаются уведомления о подписках, напоминания-поздравления-прочее: проверяем настройки почты

Не снимаются нарушения - смотрим настройки нарушений, внимательно и вдумчиво, скорее всего, там что-то неправильно прописано
Не происходит разблокировка временно заблокированных пользователей - аналогично предыдущему пункту, курим настройки баллов нарушений и автоблокировки

Не происходят повышения пользователей:
1. Внимательно проверяем настройки повышений
2. Имейте в виду, повышения просчитываются только для активных пользователей. "Активных" здесь - не дефолтные 30 дней. В целях экономии и оптимизации разработчики проверяют только юзеров, у которых активность была со времени lastrun (последнего запуска) запланированной задачи. То есть, грубо говоря, юзер должен зайти на форум, тогда ближайший крон его повысит.
В том экзотическом случае, когда Вы видите, что юзеру повысили репу, и хотите сделать ему приятное - чтобы он сразу увидел повышение (экстра-экзотический случай: если Вы предполагаете, что юзер чаще ходит по форуму гостем... или обиделся и ждёт, пока ему репу натычут и повысят...) - ну... смените ему группу вручную.
Оффтоп

Не обновляются счётчики просмотров тем/вложений:
Это отдельная проблема. Частая проблема, кстати. Настолько частая, что считаю необходимым ещё раз написать решение.
Зайдите в ПМА - phpmyadmin - и посмотрите, не плодятся ли у вас таблицы с названиями aaggregate и taggregate (это штатные, кроме них - счётчики просмотров блогов, например, тоже создают аналогичные таблицы)
Если да, плодятся, их уже десятки, сотни - проверьте наличие таблиц threadviews, attachmentviews, (blog_views, если установлены блоги) и выполните диагностику этих таблиц.
Повреждение таблицы attachmentviews плодит aaggregate_temp_, повреждение threadviews соответственно taggregate_temp_
Вообще при отсутствии/повреждении таблиц вас должно бы завалить на почту сообщениями об ошибке базы данных)
Восстановите повреждённую таблицу (создайте заново, все данные - в файле install/mysql-schema.php)
Все временные aggregate - удаляйте
подробности про ошибки БД - в этой теме: Ошибка БД - Database error

===
Возвращаемся к крон-задачам.
Вопрос-ответ:

По какому принципу запланированные задачи выполняются именно с такими промежутками?
//меня слегка ставит в тупик этот вопрос//
Задачи "размазаны" по времени на 24 часа, и в течение часа - разные задачи вызываются в среднем с пятиминутным промежутком
что-то выполняется чаще, что-то реже
При этом разработчики ориентировались на среднестатистический форум, особенно по посещаемости в течение суток. Объёмные задачи, такие, как ежедневный обзор или рассылка поздравлений с ДР вынесены на ночное время. Причём, очень разумно, не на два-три ночи, когда все нормальные спят сном праведников, а на полночь, когда юзера ещё заходят на форум, но основная нагрузка уже схлынула.
Логично?
Весьма.

и тогда - следующий вопрос:
А у меня сервер - в америках, а юзера - из СНГ, может быть, мне нужно переставить время выполнения задач?
Ну, раз вопрос формулируется "может быть", значит, острой необходимости - нет)

Читал accesslog. Увидел странность: обращение к cron.php бывает подряд много раз, и цифра, например, cron.php?rand=1327575467 повторяется одна и та же, много раз. Это плохо?
Чтение логов - занятие увлекательное и очень полезное. Но полезнее, всё же, читать не access, а error.log
Почему вызывается один и тот же rand? Да, такое бывает, и не редко, особенно на посещаемых форумах. Пришло время выполнения очередной задачи, и несколько юзеров как раз ткнулись в какие-то страницы. С учётом того, что $cronimage находится в футере; время загрузки страницы у юзеров - разное; страница может быть перегружена всякими сайдбарами, и время генерации страницы - тоже не мгновенно, то юзерам совсем не обязательно заранее сговариваться и тыкать в темы на раз-два-три.
Не заморачивайтесь. Следующий rand, через пять минут, был уже с другой цифрой? значит, всё нормально.
Если уж зуд в руках и так хочется что-то сделать, можете попробовать переместить вызов крона из футера куда-нибудь повыше. Скажем, в хедер.

Хостер читал мой accesslog. Увидел множество обращений к одному файлу, cron.php, и требует, чтобы я оптимизировал работу скриптов.
Оффтоп
Какой хороший хостер... беспокоится...
Обычно в таких случаях я рекомендую просветить хостера, что с тех пор, как были изобретены сайты а-ля простая хтмл-страничка, прогресс шагнул далеко вперёд. И обычно это мало помогает)
Так же мало помогают объяснения, что просто вызов крона не грузит сервер, всё зависит от того, какую конкретно задачу запускает крон.
Впрочем, если хостер хочет быть полезным - пусть настроит системный крон. Тогда вызов переменной из футера можно будет удалить. Задачи будут вызываться не бессистемно шляющимися по форуму посетителями, а строго по расписанию.
Ссылка

Я подписан на все разделы, у меня везде проставлено уведомление о новых темах/сообщениях в разделе. На почту ничего не пришло, захожу на форум - боты заспамили весь форум! Начал чистить - поприходили уведомления и о новых темах, и о новых ЛС. Почему так? Почему уведомления не пришли сразу?
Потому что боты - нЕ люди, и ходят не с браузеров, и крон не вызывают. Значит, Вы - первый, кто после набега ботов зашёл на форум с браузера. Поскольку нет стопроцентного способа привлечь постоянно присутствующих на форуме людей, займитесь борьбой с ботами. Статья: Методы борьбы со спам ботами

Поставил хак, он должен делать то-то и то-то, но он как-то странно работает, задачи то выполняются, то нет.
Бывает, что разработчики хаков ошибаются при составлении крон-задачи. Посмотрите в Админка - Запланированные задачи - Управление задачами
Верх таблички, буквы м ч Д М ДН



минута
час
День
Месяц
День Недели

Задача со скрина выполняется на 59й минуте каждого часа, каждый день

Смотрим другие примеры задач:



Первая, подчёркнутая зелёным: выполняется в 0 часов 10 минут каждый день
Вторая - попробуйте прочесть самостоятельно, прежде чем раскрыть ответ ответ
Прочли правильно? Отлично! идём дальше.
Подчёркнутое синим: здесь всё верно? ответ
Подчёркнутое красным: ответ
Если Вы обнаружили проблему с выполнением задач конкретного продукта, не забудьте поставить разработчика в известность.
Так же напоминаю: полезно подписываться на тему с хаком, если Вы его установили - чтобы не пропустить обновления/фиксы.

===
Статья по возможности будет дополняться.

Last edited by Luvilla : 03-06-2013 at 03:41 PM.
 
Old  
ka81
Продвинутый
 
ka81's Avatar
Default 0

вот задача
 
Bot
Yandex Bot Yandex Bot is online now
 
Join Date: 05.05.2005
Реклама на форуме А что у нас тут интересного? =)
Old  
Luvilla
Блондинка с электро......
 
Luvilla's Avatar
Default 0

почему отдельной темой?
ладно бы, если бы ты не знал, что это запланированные задачи, но ты знаешь...
есть спец-тема Запланированные задачи, крон: возможные проблемы и решения
после прочтения темы будут объединены

Quote:
Originally Posted by ka81 View Post
как побороть это??
и часто "это" происходит?
когда у юзера была последняя активность?
какие-то манипуляции с его постами - проводились? копирование или одобрение?
вообще крон работает? (вопрос из разряда "на всякий случай")

Quote:
Originally Posted by ka81 View Post
вот задача
ай-ай.... никаких вложений, объява под навбаром
 
Old  
TAIFUN
Человек
vBSSecurity
 
TAIFUN's Avatar
Default 0

Проблемы с кроном, наверное.
 
Old  
Sven
Верстальщик
 
Sven's Avatar
Default 0

Не раз замечал, что некоторые "умельцы" удаляют из шаблона крон..
 
Old  
ka81
Продвинутый
 
ka81's Avatar
Default 0

Quote:
Originally Posted by Sven View Post
Не раз замечал, что некоторые "умельцы" удаляют из шаблона крон..
о чем речь, объясните пжлст?
спасибо.

ka81 добавил 18.03.2014 в 08:52
Quote:
Originally Posted by TAIFUN View Post
Проблемы с кроном, наверное.
что и где посмотреть/проверить?

Last edited by ka81 : 03-18-2014 at 10:52 AM. Reason: Добавлено сообщение
 
Old  
Luvilla
Блондинка с электро......
 
Luvilla's Avatar
Default 0

@ka81, мои вопросы ты проигнорировал?

Quote:
Originally Posted by ka81 View Post
что и где посмотреть/проверить?
читай первый пост, там всё максимально подробно расписано

ссылку на форум дай, мы сами посмотрим
 
Old  
ka81
Продвинутый
 
ka81's Avatar
Default 0

Quote:
Originally Posted by Luvilla View Post
@ka81, мои вопросы ты проигнорировал?
ни в коем случае, просто не имел ответов на тот момент.

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


по поводу форума - ссылка на него в личке, мы кстати уже переписывались по этому форуму.
 
 

Tags
cron, запланированные задачи, крон

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT +4. The time now is 04:33 AM.


Powered by vBulletin® Version 3.6.0
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.