繁体   English   中英

PHP:python脚本的exec在Raspberry PI 2上不起作用

[英]PHP: exec of python Script not working on the Raspberry PI 2

我的问题是我的RaspPI的Webspace文件夹中有一个python脚本,我的PHP脚本应调用该脚本,但事实并非如此。 我已经为所有人设置了python文件权限。 但我仍然无法使它正常工作。 我尝试了几种解决方案,但没有一个对我有帮助。 这是我到目前为止所做的:

index.htm的

<html>
<body>

<form action="photo.php" method="post">

<input type="submit" value="Take photo" name="test">
</form>

</body>
</html>

photo.php

    if(isset($_POST['test']))
    {

    shell_exec('/var/www/photoburst.py');



    echo'photo saved';



    }
    else 
    {
    echo'Error.';
    }
    ?>

我找不到任何错误,因此请帮助我解决此问题。

谢谢!

  • 确保您的文件具有执行权限chmod a+x /var/www/photoburst.py
  • 相反,您可以调用/usr/bin/python /var/www/photoburst.py看看是否/usr/bin/python /var/www/photoburst.py

您正在运行什么Linux? Raspbian? N00bs?

对于每个有相同问题的人:这是解决方案:首先,您需要对照相机模块和var / www文件夹提供完全的写入/读取和执行权限。 通过键入以下内容来完成:


须藤chmod 777 / var / www
须藤chmod 777 / dev / vchiq


进入Shell命令行,也许您需要通过输入以下内容获得root权限


须藤bash


之前。

下一步是将图像保存路径文件夹更改为var / www,因为现在可以完全访问它了。

完成后,您需要像这样修改photo.php

<?php


if(isset($_POST['test']))
{

$command = escapeshellcmd('/var/www/photoburst.py');
 $output = shell_exec($command);
  echo $output;



echo'Saved!';



}
else 
{
echo'No Info submitted from the form.';
}
?>

最后一件事是告诉python文件,现在是带有shebang行的python文件:完成后,photoburst.py应该类似于以下内容:

#!/usr/bin/python
import time
import picamera
import datetime

camera=picamera.PiCamera()





camera.capture('/var/www/'+datetime.datetime.now().strftime("IMG %T%B%d%Y")+'.jpg')
camera.close()

因此,如果按照这些步骤操作,您可能可以通过PHP用树莓派摄像头拍照。 非常感谢您在这里的所有海报。 没有您的帮助,我将永远找不到我的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM