在Linux中安全地从PHP运行python脚本

时间:2011-04-07 10:53:35

标签: php python linux

我正在用PHP构建简单的web孩子编程学习页面。 应用程序将测试python脚本的正确性。 我在Linux上不是很强大。服务器操作系统是Centos。

1)那么,如何从PHP运行python脚本,以便它对服务器安全? 我应该考虑哪些主要内容? 而且,如果达到时间限制,PHP应该能够停止执行脚本。

2)Python脚本将使用raw_input()获得输入,并将使用print()提供输出。如何设置python脚本的输入并使用PHP从脚本输出?

3 个答案:

答案 0 :(得分:0)

第一个问题:没有什么是100%安全的,但你可以小心翼翼:

  • 将您的python脚本放在/public_html(或/www)下方,但在某个隐藏目录中;
  • 将他们的权限设置为0700(或rwx------),因此只有您可以读取,编写和执行它们(假设您的用户是运行PHP脚本的用户)。如果您有权访问终端,则可以通过chmod 0700 script.py
  • 来完成

第二个问题:您可以使用proc_open来执行脚本并与他们交换信息。

答案 1 :(得分:0)

尝试此代码:

'$command = escapeshellcmd('YOUR_FILE.py');
$output = shell_exec($command);
echo $output;'

答案 2 :(得分:-3)

以下内容应该对您的服务器非常安全

<?php

    echo "<a href='http://www.codepad.org'>Click here, click python, enter your code, and click submit</a>";
?>