php - 从在apache中运行的php执行ffmpeg

标签 php apache ffmpeg

我正在从运行在 apache 中的 php 执行 ffmpeg。我曾经收到错误“加载共享库时出错:libavdevice.so.52:无法打开共享对象文件:没有这样的文件或目录”。

如果从命令提示符执行 php 脚本或从命令提示符直接调用 ffpmeg,它曾经完美地工作。

我按照以下步骤修复了 apache 错误:

步骤1:使用以下命令检查服务器中是否存在文件“libavdevice.so.52”。

查找/-name 'libavdevice.so.*'

步骤2:您将通过上述命令获得文件“libavdevice.so.52”所在的目录。假设在这个例子中目录是“/usr/local/lib/”。

第 3 步:您必须在文件“/etc/ld.so.conf”中添加目录名称。

第四步:执行命令“ldconfig”。

上述操作对 apache 有何影响?

最佳答案

如果您遇到命令提示符与 php 问题,我可能会查看文件执行权限。 www-data(或 PHP 运行的任何人)是 FFMPEG 在 PHP 执行时所假定的权限。

我过去没有遇到过这个确切的问题,但这是我建议您尝试寻找的一个地方,因为它可以从 CLI 正确运行。

关于php - 从在apache中运行的php执行ffmpeg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2281839/

相关文章:

java - Android 应用程序的 JWT 身份验证

javascript - 使用 Node 调用外部动态库

ffmpeg - 使用 ffmpeg 将 .flac 转换为 .mp3,保留所有元数据

php - 当我在docker中使用composer时“Could not delete ./”

php - 使用 php/mysql 或 codeigniter 在多行中连接字符串

php - 如何将值插入数组并在插入时增加数组索引?

php - 创建work_on表时出现语法错误

php - PHP 可以移动并编辑服务器上的根系统文件吗?

visual-c++ - 如何解码全速率 GSM 音频文件?

spring - NoClassDefFound错误: org/apache/commons/pool/KeyedObjectPoolFactory BasicDataSource Spring