Php HTML按钮启动Shell脚本

Php HTML按钮启动Shell脚本,php,lighttpd,Php,Lighttpd,与以下机构合作: Linux Debian Lighttpd服务器 PHP7.0 我想按HTML按钮启动一些shell脚本。 所有文件都放在/var/www/html中 这些权利是通过以下方式实现的: sudo chown www-data:www-data /var/www/ 所以,我写了一些代码: HTML测试代码(index.HTML): PHP测试代码(openApp.PHP): 但是运气不好,什么都不起作用 另外,我的Lighttpd配置文件如下所示: server.mo

与以下机构合作:

  • Linux Debian
  • Lighttpd服务器
  • PHP7.0
我想按HTML按钮启动一些shell脚本。 所有文件都放在/var/www/html中 这些权利是通过以下方式实现的:

sudo chown www-data:www-data /var/www/
所以,我写了一些代码:

HTML测试代码(index.HTML):


PHP测试代码(openApp.PHP):


但是运气不好,什么都不起作用

另外,我的Lighttpd配置文件如下所示:

server.modules=( “mod_访问”, “mod_别名”, “mod_compress”, “mod_fastcgi”, “mod_重定向”, )

可能是我的代码错了。 我需要一些Javascript来完成这项工作吗? 可能是权利错了


你能帮我吗?我受够了。

你认为会发生什么?你的脚本可能正在运行,只是没有做你认为的事情Hi Blues,不,你看到的脚本可能会启动Nautilus,但它不会。这就是为什么我不明白发生了什么。你认为这是权利的问题还是可能在错误的目录中?感谢您的帮助我使用@blues Nautilus是一个GUI文件管理器。如果不设置DISPLAY,您认为它将在哪里启动GUI?在启动Nautilus之前,PHP可能会尝试导出environment DISPLAY=0.0。PHP还应该在后台、后台和一个单独的进程组中执行它,否则当CGI退出时它将被杀死。嗨,Gstrauss,谢谢你的反馈。我做了一些测试,修改了shell脚本以创建一个空文件“touch/home/$USER/testFile”。即使没有GUI,解决方案也无法工作。但根据你的回答,我同意你们两人的观点,你是对的。那么,你能告诉我我在HTML页面上是否有错误吗?可以使用POST方法吗?可能有一些错误的权利?谢谢你的帮助和支持
<form action="openApp.php">
    <input type="submit" value="Open Script">
</form>
<?php
    exec('nautilus');
    header('Location: http://localhost/index.html?success=true');
?>