PHP脚本无法启动本地Shell脚本

时间:2019-12-12 14:30:33

标签: php

实际上,我正在使用PHP 7.0在嵌入式Linux平台上使用Lighttpd Web Server。

我的目标很简单: 如何将网页中的某些值写入本地文件?

为此,我做到了:

HTML页面:

<!DOCTYPE html>
<html>
<head>
<style>
</style>
</head>
<body>
<form action="test1.php" method="POST">
    <input type="submit" value="Open Script">
</form
</body>
</html>

PHP脚本:

<?php 
   ini_set('display_errors', 1);
   ini_set('display_startup_errors', 1);
   error_reporting(E_ALL);

   exec("/var/www/html/test.sh");
?>

以及至少壳脚本:

#!/bin/bash

cd /home/$USER
touch testFile && echo "this is a test" > testFile

我的所有目录都位于www-data(用户和组)下,并且每个脚本的权限都设置为chmod 750。

因此,当我单独启动PHP和shell脚本时,它可以正常工作而不会出现问题。

示例:

./test.sh

php test1.php

但是网页没有运气。 它不起作用。

您知道我的问题吗? 我认为这是由于用户和组的权限

火车。

1 个答案:

答案 0 :(得分:0)

<?php 
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

exec("/bin/bash /var/www/html/test.sh");

php进程没有重击。您必须在命令中指定