Doc2PDF - не может подключиться или начать собственный слушатель

голоса
6

команда

$file = '/var/www/test.docx';
move_uploaded_file($uploaded_file, $file);
echo 'is file: '.is_file($file).\n;

exec('/usr/bin/doc2pdf -o '.$file.'.new '.$file.' 2>&1', $out);
print_r($out);

вывод

is file: 1
Array
(
    [0] => Error: Unable to connect or start own listener. Aborting.
)

Это часть сценария загрузки и работает как www-dataпод Apache ..

Командная строка в одиночку работает отлично от замазки, как root

Сценарий работает под www-data, но теперь он не делает? : - /

обновление Я

apt-get install sudo
sudo visudo # added www-data ALL = NOPASSWD: /usr/bin/doc2pdf

код:

exec('sudo /usr/bin/doc2pdf -o '.$file.'.new '.$file.' 2>&1', $out);
print_r($out);

ошибка:

sudo: unable to resolve host dyntest-amd-3700-2gb

обновление II

echo 127.0.1.1 $(hostname) >> /etc/hosts
reboot
Задан 04/09/2015 в 15:39
пользователем
На других языках...                            


2 ответов

голоса
0

Подключение к SSH в качестве корня

Суд visudo

Добавить

WWW-данные ALL = (ALL) NOPASSWD: / USR / бен / Doc2PDF

и сохранить: WQ

Ответил 04/09/2015 в 18:39
источник пользователем

голоса
5

Вы можете либо изменить владелец / USR / BIN / Doc2PDF с Чаун командой или изменить привилегии пользователя WWW-данные , позволяющие выполнять команды , как корень без ввода пароля. Чтобы сделать это, вы должны отредактировать / и т.д. / sudoers файл. Лучше не редактировать его derectly, хотя. Там в Util в Linux используется для этого: visudo .

$ Sudo visudo

добавьте в самом конце файла

WWW-данные ALL = NOPASSWD: / USR / бен / Doc2PDF

Сохраните файл, и вы сделали. Не забудьте изменить эту строку кода PHP, а также (добавить Sudo в начале):

exec('sudo /usr/bin/doc2pdf -o '.$file.'.new '.$file.' 2>&1', $out);
Ответил 07/09/2015 в 10:50
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more