Audiowaveform Отказано в разрешении bbcrd

Я использую это https://github.com/bbcrd/audiowaveform библиотека.
Все установлено правильно (используя метод build git, а не apt)
Когда я пытаюсь бежать audiowaveform -i test.mp3 -o test.dat -z 256 -b 8 в Терминал Это работает отлично.

Когда я пытаюсь запустить то же самое в php, используя exec

$cmd = "audiowaveform -i  /var/www/html/test.mp3 -o /var/www/html/test.dat -z 256 -b 8";
$cmd .= " 2>&1 ";
exec($cmd,$error);
var_dump($error);

Это показывает эту ошибку

...
Done: 99%
Done: 100%
[11] => Recoverable frame level error: lost synchronization
[12] =>
[13] => Frames decoded: 13921 (6:03.650)
[14] => Generated 62645 points
[15] => Failed to write data file: /var/www/html/test.dat
[16] => Permission denied

Похоже, некоторые ошибки разрешения какой-либо помощи?
Любая помощь ?

1

Решение

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

Сначала создайте файл, если он не существует, чтобы вы могли установить разрешения

touch /var/www/html/test.dat

Дать разрешение кому-либо

chmod 777 /var/www/html/test.dat

Или вы можете изменить владельца на пользователя веб-сервера

chown www-data /var/www/html/test.dat

Лучше всего добавить группу, так что только вы двое можете написать

chown :www-data /var/www/html/test.dat
chmod 775 /var/www/html/test.dat
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]