При загрузке файла возникла проблема.

Статус
В этой теме нельзя размещать новые ответы.

MEDWEDOS

Участники
Сообщения
9
Реакции
5
Баллы
5,500
В общем как то неожиданно появилась проблема.
Все работало до одного момента, мне понадобилось форум перенести из корня в , собсно все работало, пока я не попытался прикрепить файл к сообщению, а потом и аву, появились ошибки, появились записи ошибок в журнале ошибок, вот такие:
1.png

Вот так это выглядит в журнале ошибок:
2.png

А собсно вот и текст ошибки из журнала ошибок:
ErrorException: tempnam(): open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/var/www/admin/data:.) - library/XenForo/Model/Avatar.php:124

#0 [internal function]: XenForo_Application::handlePhpError(2, 'tempnam(): open...', '/var/www/admin/...', 124, Array)
#1 /var/www/admin/data/www/zombie-source.ru/forum/library/XenForo/Model/Avatar.php(124): tempnam('/var/www/admin/...', 'xf')
#2 /var/www/admin/data/www/zombie-source.ru/forum/library/XenForo/Model/Avatar.php(69): XenForo_Model_Avatar->applyAvatar(1, '/var/www/admin/...', 2, 2000, 1134, Array)
#3 /var/www/admin/data/www/zombie-source.ru/forum/library/XenForo/ControllerPublic/Account.php(548): XenForo_Model_Avatar->uploadAvatar(Object(XenForo_Upload), 1, Array)
#4 /var/www/admin/data/www/zombie-source.ru/forum/library/XenForo/FrontController.php(347): XenForo_ControllerPublic_Account->actionAvatarUpload()
#5 /var/www/admin/data/www/zombie-source.ru/forum/library/XenForo/FrontController.php(134): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#6 /var/www/admin/data/www/zombie-source.ru/forum/index.php(13): XenForo_FrontController->run()
#7 {main}


array(3) {
["url"] => string(61) "http://zombie-source.ru/forum/index.php?account/avatar-upload"
["_GET"] => array(1) {
["account/avatar-upload"] => string(0) ""
}
["_POST"] => array(8) {
["use_gravatar"] => string(1) "0"
["avatar_date"] => string(10) "1391680876"
["avatar_crop_x"] => string(2) "18"
["avatar_crop_y"] => string(1) "0"
["_xfToken"] => string(8) "********"
["_xfNoRedirect"] => string(1) "1"
["_xfResponseType"] => string(9) "json-text"
["_xfUploader"] => string(1) "1"
}
}


Что делать? Ведь до переноса все нормально работало.
 
А я понял, дело во включенном open_basedir, только вот незадача, я сам себе хостинг и на машине стоят не только мои сайты, отключение open_basedir это прямая уязвимость к угону файлов по всей ос.
Есть вариант сделать что то другое?
Создавать виртуальные временные /tmp папки глупо, может кто то нашел выход?
 
В общем я нашел способ для тех у кого ISP Core/Manager (как и в моем случае):

В самый низ файла /usr/local/ispmgr/etc/ispmgr.conf добавить следующее (обращаю внимание, аккуратнее с пробелами!):
ExtraOpenBasedir :/tmp

И после этого перезапустить панель:
killall -9 -r ispmgr

После этого все вновь создаваемые www домены должны быть с папкой /tmp в open_basedir.

А для исправления настроек для существующих доменов необходимо отключить/включить поддержку PHP для домена. Также в конце не забываем перезапустить Апача:
/etc/init.d/apache2 restart

Что бы и не отключать open_basedir и работало все как надо, просто переводим службу PHP в режим работы PHP с CGI (вместо Apache)

Тему можно закрывать)
 
Последнее редактирование модератором:
Статус
В этой теме нельзя размещать новые ответы.
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу