使用PHP

时间:2016-11-08 23:33:56

标签: php python linux apache

我正在开发一个带有覆盆子pi的项目,使用移动设备打开和关闭LED灯条。

我遇到的最后一个问题是让脚本从覆盆子pi托管的apache服务器运行。

<html>
   <head>
      <meta charset="UTF-8" />
      <link rel="stylesheet" type="text/css" href="css/style.css">
   </head>
   <?php
      if (isset($_POST['LightON'])) {
          exec("sudo python /home/pi/lightOn.py");
      }
      if (isset($_POST['LightOFF'])) {
          exec("sudo python /home/pi/lightOff.py");
      }
   ?>
   <form method="post">
      <button class="btn" name="LightON">Light ON</button>&nbsp;
      <button class="btn" name="LightOFF">Light OFF</button><br><br>
   </form>
</html>

当在raspberry pi上运行命令行时,Python脚本可以正常工作。但是当在Apache服务器上运行时,没有任何反应。我在这做错了什么?它与权限有关吗?我对linux和php都很陌生,请记住这一点。

为什么Python在本地工作但不在服务器上工作?

谢谢!

1 个答案:

答案 0 :(得分:1)

对于任何偶然发现此问题的人来说,只需在文件路径前添加sudo即可解决问题。