当使用php shell_exec()调用Blender时,Blender无法运行。

问题描述 投票:0回答:1

Blender(2.80)安装在AWS的homeec2-user目录下。

php在同一台服务器上运行,从varwwwhtmlwed开始。

我可以通过Cli访问。

wed]$ ls /home/ec2-user

列出homeec2-user的内容。

通过php访问。

<?php<br />
$output = shell_exec('ls /home/ec2-user'); 
echo "<pre>$output</pre>"; 
?>

列出homeec2用户的内容

我可以通过 cli 运行 Blender。

wed]$ /home/ec2-user/blender280/blender -b -noaudio proj007/font-sample.blend --python proj007/font-samples.py

运行Blender脚本(proj007font-samples.py)并输出663个png文件到varwwwhtmlwedfonts。

但不是通过php。

<?php
$output = shell_exec('/home/ec2-user/blender280/blender -b -noaudio proj007/font-sample.blend --python proj007/font-samples.py'); 
echo "<pre>$output</pre>"; 
?>

什么都没有。

命令是复制粘贴的,所以没有错别字。

home、ec2-user和blender280的权限都设置为允许读取和执行。

这可能是Apache的问题吗?

php apache amazon-ec2 blender shell-exec
1个回答
0
投票

原来我需要php-fpm。事实证明,我无法让php-pm在AWS上使用Amazon Linux工作。用Ubuntu把所有的东西都切换到AWS上(大约一天半的项目),一切都很顺利。

© www.soinside.com 2019 - 2024. All rights reserved.