在PHP中执行命令行


executing a command line in PHP

我有一个Codeigniter框架,我正在它上面构建一个测试框架。测试框架的一个特性是远程部署测试套件。因此,我试图部署我从网页上编写的Python测试服:

public function deploy_test()
{
    if( !$this->input->is_cli_request() ) {
       echo json_encode(system("python test_suit.py"));
    }
}

从我的控制器,所以,当一个测试部署,我想要运行它。为了证明概念,我这样做了。但是,作业永远不会被部署,命令行也永远不会执行。当我在终端上运行这段代码时,它正常工作。我遗漏了什么?谢谢你

**当我执行ls -l时,它会工作,这很奇怪…

基本上,这是一个坏主意——如果主机拒绝访问服务器上执行的东西(毕竟,它怎么知道你的代码不是恶意的),你真的不应该尝试解决这个问题,至少没有告诉你的提供商,并询问他们是否允许你这样做!

毕竟,执行LS并不是恶意的,但您可以尝试执行一个Python脚本,其中'rm -rf'是服务器。

现在,你可能能够找到一个工作,但在我看来,问题是你应该吗?他们可能会认为这是黑客攻击。