如何为apache提供cmd权限?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何为apache提供cmd权限?相关的知识,希望对你有一定的参考价值。

我正在开发一个将github存储库拉到服务器的php应用程序。 Github webhooks调用php文件。

我想用php执行cmd命令。我假设我需要apache权限,但我不知道如何给他们。

下面的PHP代码创建一个mkdir.bat和一个gitclone.bat并运行它们。 mkdir成功运行,它创建一个空文件夹,但gitclone不会创建任何文件夹或文件。当我手动运行gitclone时,它会创建文件夹和文件。

file_put_contents("mkdir.bat", "mkdir test");
exec("mkdir.bat");

file_put_contents("gitclone.bat", "git clone https://github.com/gutyina700/WPTG.git");
exec("gitclone.bat");
答案

我在电脑上执行了你的代码

file_put_contents("gitclone.bat", "git clone https://github.com/gutyina700/WPTG.git");
exec("gitclone.bat 2>&1",$o);
print_r($o);

额外的代码是检查cmd的输出并返回“git command not exsists”所以你只需要添加一行

<?php
putenv("PATH=C:Program FilesGitcmd");
file_put_contents("gitclone.bat", "git clone https://github.com/gutyina700/WPTG.git");
exec("gitclone.bat 2>&1",$o);
print_r($o);
?>

这工作正常。

以上是关于如何为apache提供cmd权限?的主要内容,如果未能解决你的问题,请参考以下文章

如何为 AWS API Gateway Custom Authorizer 提供 Lambda 权限?

如何为 Fargate 任务提供上传到 S3 的正确权限

如何为 zeppelin 用户授予正确的权限

如何为 gcp 中的组提供权限(创建/查看)并启用相同的日志记录

如何为 TFS 中组的特定用户提供签出和签入访问权限

Chef:如何为多个服务器提供文件库访问权限