我有一个奇怪的情况刚刚发生。FFMPEG 不再从 PHP 执行,而是从命令行执行。
这正是命令的内容:
ffmpeg -i ../../uploads/ee78d5deb564901626067cc0008456ed.mp3 -ab 96k -y ../../uploads/mp3/ee78d5deb564901626067cc0008456ed_6203688.mp3
它是如何在 PHP 脚本中执行的:
if(! exec("ffmpeg -i ".$target_path."".$hash_filename.".".$path_extension." -ab 96k -y ".$target_path."mp3/".$hash_filename."_".$session_ID.".mp3")){
echo 'ffmpeg failed';
}
该命令确实有效,但不再有效。我最近更新了 plesk,但我非常怀疑这会影响到这一点。我认为我最近所做的唯一可能影响它的事情是将文件上传到子域。所以命令中文件所在和存储的目录是在文档根目录之外的目录中。但是,该move_uploaded_file
功能有效,我已将open_basedir
PHP ini 更改为 webspace 根目录。