【发布时间】:2014-02-15 19:03:23
【问题描述】:
我已经开始了一个小项目,只是为了在家练习。 我正在使用带有 debian linux 的 raspberry pi,在板上安装了 apache webserver 2,我不知道 webserver,但是一些如何设法创建带有按钮的 html 页面和使用按钮 click 运行的 cgi 脚本。Cgi 脚本具有 html 代码响应按钮点击。 显示 hello world 后跟命令调用 shell 脚本 .sh。
shell 脚本具有以下命令 RPI.a(我在 c 语言中的项目调用 gpio pin 在命令行中执行 .cgi 脚本时运行良好。
1)整体 Html 按钮单击 ->2) 调用 cgi 脚本(带 html 的 shell)->3) 调用 shell(.sh)-> 调用我的应用程序闪烁的 LED。
从命令行手动执行 .cgi 时运行良好。但是当从 html 中单击按钮时,它会跳过 "$(sh script.sh) 并执行下一行。
所有文件已读取和执行所有文件的权限。
.cgi 脚本
#!/bin/bash
echo "Content-type: text/html"
echo ""
echo "<html><head><title>Bash as CGI"
echo "</title></head><body>"
echo "<h1>Hello world</h1>"
"$(sh Home_auto.sh)"
echo "skipps the program"
echo "</body></html>"
我的 Home_auto.sh 脚本
sudo RPI.a<<EOF
EOF
将我的应用程序目录添加到 $PATH var。
我发现当不是 root 用户时,它无法执行我的应用程序几次。Display 的 未找到 RPI.a 命令 请帮助我调用 script.sh,它将在按钮单击时调用我的 RPI.a 应用程序。
【问题讨论】:
-
向我们展示 cgi 脚本。
-
#!/bin/bash -x echo "Content-type: text/html" echo "" echo "
Bash as CGI" echo " " echo "Hello world
" "$(sh Home_auto.sh)" echo "跳过程序" echo "" -
以上是我用来执行我的 .sh 脚本的 cgi 脚本 i .sh 脚本有 RPI.a
-
请将其添加到可以正确格式化为代码的问题中
标签: linux apache bash shell cgi-bin