Назад | Перейти на главную страницу

Postfixadmin не работает после обновления «Невозможно повторно объявить hex2bin»

Я недавно обновил свой Debian wheezy (7.7) и после этого забыл проверить все системы. Итак, я не могу точно сказать, какие были версии до того, как я обновился, или в какой момент они сломались.

Когда я сегодня попытался подключиться к своему postconf, я получил только пустую страницу. При просмотре журнала ошибок было обнаружено следующее сообщение:

PHP Fatal error:  Cannot redeclare hex2bin() in /var/www/postconf/functions.inc.php on line 1338

Если бы я попытался вызвать страницу входа прямо в php с помощью php5 /var/www/postconf/login.php дается та же ошибка.

Я наткнулся это старое обновление от людей postfixadmin, которые описали, что «PHP около версии 5.3.8 включает hex2bin как родную функцию». К счастью, функция PHP, по-видимому, делает то же самое, что и функция postconf, поэтому ее можно сохранить для использования их.

Вы должны отредактировать /var/www/postconf/functions.inc.php и перейдите к функции hex2bin в строке 1328 и введите эту строку перед функцией: if (!function_exists('hex2bin')) { и закройте эту скобку в конце функции (строка 1339) с помощью }.

После этого postconf будет работать должным образом.

Скорее всего было бы лучше обновить всю /var/www/postconf папку, но я не мог понять, как это сделать.