如何在PHP web服务器中运行Python脚本

1 投票
1 回答
1617 浏览
提问于 2025-04-27 21:39

我正在尝试从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);

?>

这里是 相关文档

撰写回答