用php的CGI方式打开本地软件,报软件依赖库不存在,但是cli模式下是正常的

test.php文件

<?php
exec('deepin-movie');

例如用php打开本地的deepin-movie视频软件,在php的cli模式下,执行
php test.php 可以正常运行,但是我在页面用按钮触发调用时,却报错了,页面请求是http://localhost/test.php

deepin-movie: /opt/lampp/lib/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by deepin-movie) deepin-movie: /opt/lampp/lib/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by deepin-movie) deepin-movie: /opt/lampp/lib/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by deepin-movie)
阅读 3.2k
2 个回答

这个问题我之前有回答过类似的。
点击跳转

应该是你本地有2个或以上的php版本,cli模式和cgi模式的使用的版本不一样,所以会出现依赖库不存在。

只有一个配置的,而且本地视频软件依赖环境不应该和php扯上关系的,还没找到原因;但目前用其他方法解决了,用一个后台服务监听一个端口,点击页面播放链接时推送播放地址到端口地址,由后台服务去执行命令,这就实现了web触发,cli模式下运行 @qqlcbb

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题