Ssh 通过PHP shell_exec运行blender脚本

Ssh 通过PHP shell_exec运行blender脚本,ssh,blender,shell-exec,Ssh,Blender,Shell Exec,我试图通过我的PHP脚本运行以下命令 $exe = "blender -b /var/www/renderer/tmp/abcd/abcd.blend -P /var/www/renderer/addon_execute.py -- -sx 300 -sy 600 -s 0.5 -sa 10"; $res = shell_exec( $exe ); 我得到的结果是 Read blend: /var/www/renderer/tmp/abcd/abcd.blend Blend

我试图通过我的PHP脚本运行以下命令

    $exe = "blender -b /var/www/renderer/tmp/abcd/abcd.blend -P /var/www/renderer/addon_execute.py -- -sx 300 -sy 600 -s 0.5 -sa 10";

    $res = shell_exec( $exe );
我得到的结果是

Read blend: /var/www/renderer/tmp/abcd/abcd.blend 
Blender quit
通过SSH运行相同的脚本可以完美地运行


这里有什么问题?

如何运行它(即直接通过
php./your_script.php
或通过web服务器HTTP URL)?如果是后者,第一个版本是否有效?例如,这可能与web服务器在不同的系统帐户下运行有关,因此
~/.config/blender
的位置不同,可能没有您希望它使用的加载项。通过HTTP URL,第一个可以工作的是
BLENDER\u USER\u SCRIPTS
BLENDER\u USER\u CONFIG
环境变量,这些变量可用于将userprefs和加载项目录重定向到web服务器可访问的位置(例如apache)。此目录应由web服务器用户可读。您可以将
.config/blender
的副本创建到此目录上的某个通用位置
chmod-R+R
,并将环境变量设置到该位置(通过绝对路径)。可能最简单的方法是使用
export BLENDER_USER_SCRIPTS=/path/to/userscripts/创建shell脚本;导出混合器用户配置=/path/to/usepresfs/;blender…
blender\u USER\u脚本和blender\u USER\u配置在哪里?看起来您依赖已安装的配置来启用加载项,您可以通过脚本安装和启用加载项。有关示例,请参见。还有一个
--插件