TorrentPier [v2.4.0.7 | 22.12.22]

Когда выполняю из консоли крон команду: /opt/php73/bin/php -f /test.ru/cron.php то в ответ получаю вот такую ошибку Notice: Undefined index: SERVER_ADDR in /test.ru/library/config.php on line 181
 
Your requirements could not be resolved to an installable set of packages.

Problem 1
- Root composer.json requires php ^7.1.3 but your php version (7.0.33) does not satisfy that requirement.
Problem 2
- Root composer.json requires belomaxorka/do-file-cache * -> satisfiable by belomaxorka/do-file-cache[v2.0.7, v2.0.8].
- belomaxorka/do-file-cache[v2.0.7, ..., v2.0.8] require php >=7.1 -> your php version (7.0.33) does not satisfy that requirement.
Problem 3
- sabre/uri 2.2.0 requires php ^7.1 -> your php version (7.0.33) does not satisfy that requirement.
- sabre/uri[2.2.1, ..., 2.2.4] require php ^7.1 || ^8.0 -> your php version (7.0.33) does not satisfy that requirement.
- Root composer.json requires sabre/uri 2.2.* -> satisfiable by sabre/uri[2.2.0, ..., 2.2.4].
 
вы выполнили все запросы начиная с 2.2.0 и заканчивая 2.4.0.4?
Да, там было много ошибок, из-за того что структура базы данных совпадает с запросами, в итоге залил базу заново. Ранее я писал о том, что ВРУЧНУЮ переносил данные из базы в базу. Поэтому проблем со структурой Базы и данных быть не может!
 
Когда залил базу заново, всё равно не показывало, кто онлайн в админке. Потом я запустил крон задачу по обновлению сессии, кто онлайн Начало показывать, но при этом в профиле так и не выводится ip-адрес. Это я ещё не отвязывал крон, там скорее всего ещё будут сюрпризы...
 

belomaxorka

Member
Когда залил базу заново, всё равно не показывало, кто онлайн в админке. Потом я запустил крон задачу по обновлению сессии, кто онлайн Начало показывать, но при этом в профиле так и не выводится ip-адрес. Это я ещё не отвязывал крон, там скорее всего ещё будут сюрпризы...
а вы пробовали взять движок и развернуть на сервере с использованием оригинальной базы из коробки?

если да, то наблюдали ли вы проблемы?
 
Лучше подскажите пожалуйста, какие таблицы проверить, которые отвечают за это? Единственное могу сказать, функция decode_ip отличается от рабочего движка 2.2.3, её переписали под меня

function decode_ip($codeIp)
{
$ip = Longman\IPTools\Ip::long2ip($codeIp, true);
if (!Longman\IPTools\Ip::isValidv4(str_replace('::', '', $ip))) {
return $ip;
}
return Longman\IPTools\Ip::long2ip($codeIp);
}
 
Пошагово расписал
 

Вложения

  • 4.png
    4.png
    57.1 KB · Просмотры: 9
  • 3.png
    3.png
    57.8 KB · Просмотры: 8
  • 1.png
    1.png
    43.5 KB · Просмотры: 8
  • 2.png
    2.png
    47.6 KB · Просмотры: 7
Когда выполняю из консоли крон команду: /opt/php73/bin/php -f /test.ru/cron.php то в ответ получаю вот такую ошибку Notice: Undefined index: SERVER_ADDR in /test.ru/library/config.php on line 181
У кого-нибудь бывает такая проблема?
Вот временный костыль: $bb_cfg['cookie_domain'] = in_array($domain_name, [getenv('SERVER_ADDR'), 'localhost'], true) ? '' : ".$domain_name";
 
Когда выполняю из консоли крон команду: /opt/php73/bin/php -f /test.ru/cron.php то в ответ получаю вот такую ошибку Notice: Undefined index: SERVER_ADDR in /test.ru/library/config.php on line 181
Сейчас попробовал на локалке запустить через консоль крон, та же самая проблема
 

belomaxorka

Member
Сейчас попробовал на локалке запустить через консоль крон, та же самая проблема
Спасибо за баг-репорт, моя оплошность. Я не учёл тот факт, что суперглобальные переменные ($_SERVER) недоступны при выполнении крона. В следующей версии исправлю

Использование переменных окружения (getenv('SERVER_ADDR')) исправляет проблему, верно? Нотисов больше в логах нету?
 
Последнее редактирование:

belomaxorka

Member
У кого-нибудь бывает такая проблема?
Вот временный костыль: $bb_cfg['cookie_domain'] = in_array($domain_name, [getenv('SERVER_ADDR'), 'localhost'], true) ? '' : ".$domain_name";
Попробуйте такое решение, при этом верните всё как было в файле config.php. После отпишите помогло ли оно вам. Заранее спасибо -
 
Попробуйте такое решение, при этом верните всё как было в файле config.php. После отпишите помогло ли оно вам. Заранее спасибо -
Ошибка пропала! Но, как проверить эту переменную, для чего она нужна, какую функцию она выполняет?
 
Как исправить дублирование сессии? Если выйти из аккаунта и снова зайти, то дублируются ники на главной... Надо как-то сделать так, чтобы при выходе удалялась сессия. И ещё как-то сделать проверку по IP адресу, чтобы заходи из разных браузеров не дублировались ники
 

belomaxorka

Member
Ошибка пропала! Но, как проверить эту переменную, для чего она нужна, какую функцию она выполняет?
Не беспокойтесь, к крону не имеет никакого отношения. Просто во время выполнения крона, интерпретатор натыкается на пустую суперглобльную переменную, и говорит об ошибке. Пустая переменная только потому что выполняется крон, в других случаях она содержит адрес сервера (название хоста).
 

belomaxorka

Member
Как исправить дублирование сессии? Если выйти из аккаунта и снова зайти, то дублируются ники на главной... Надо как-то сделать так, чтобы при выходе удалялась сессия. И ещё как-то сделать проверку по IP адресу, чтобы заходи из разных браузеров не дублировались ники
При выходе сессия уделяется, просто в случае вывода статистики на главной, сама статистика кэшируется средствами движка. Пару минуток кэш будет жить
 

belomaxorka

Member
Как исправить дублирование сессии? Если выйти из аккаунта и снова зайти, то дублируются ники на главной... Надо как-то сделать так, чтобы при выходе удалялась сессия. И ещё как-то сделать проверку по IP адресу, чтобы заходи из разных браузеров не дублировались ники
Насчёт дублирования, об этой проблеме знаю ещё с версии 2.4.0, займусь этим когда буду переписывать целиком эту статистику на главной, ибо она нуждается в больших доработках. Точный срок когда перепишу не знаю, но эта задача у меня стоит в приоритете уже пару дней. В следующей версии уже будет готово, наверное, либо же в версии 2.4.0.9
 
Сверху