如何在PHP web服务器中运行Python脚本
我正在尝试从PHP中执行Python脚本,在我的本地服务器上运行得很好。但是在网上托管后,我遇到了这样的错误:
"Warning: shell_exec() has been disabled for security reasons in/home/a1608290/public_html/searc2.php on line 58"
有没有办法在PHP网页服务器中执行Python脚本???
这是我网站的链接:http://wikiquery.comuf.com/index.php
在PHP中,我是这样运行我的Python脚本的:
$tmp =`/usr/bin/python2.7 wiki.py .$var`;
或者
$tmp = exec("python wiki.py .$var");
这两种方式我都遇到了类似的错误
提前谢谢你们
1 个回答
3
原因
你的PHP设置不允许使用 shell_exec()
这个功能。这个功能在PHP的安全模式下是被禁用的。
解决方法
一般来说,我不建议在生产环境中关闭安全模式。你可以使用 ini_set
来在当前会话中启用 shell_exec
,这样就不会让你的服务器处于危险状态。
<?php
$old_settings = explode(',', ini_get('disable_functions'));
$new_settings = implode(',', array_diff($old_settings, ['shell_exec']));
ini_set('disable_functions', $new_settings);
?>
这里是 相关文档。