【发布时间】:2014-12-06 13:21:54
【问题描述】:
我有一个 Raspberry Pi,用作 DLNA、CIFS、VPN 等的多用途 24/7 设备。现在我买了一个 TellStick,这是一个可以向无线电源开关发送 433MHz 无线电命令的 USB 设备,调光器等。制造商提供 linux 的资源和工具,这真的很棒,顺便说一句。
使用特殊命令(名为 tdtool)我可以向我的电源开关发送命令,例如
tdtool --on 1
这会打开设备 1。它运行良好且稳定,因此我想摆脱 shell 命令以使处理更容易。我的想法是设置一个非常简单的 Web 服务器,它只需要能够接收 GET 或 POST 请求并触发一些操作,例如运行命令“tdtool --off 3”。所以网络服务器甚至不需要服务页面,它只需要监听请求。
我想创建一个基于 HTTP 的解决方案,因为这样我就可以将智能手机用作遥控器。有一个名为“Tasker”的 Android 应用程序本身就很棒,但它也允许根据特定条件发送自定义 HTTP 请求,这样我回家时可以让灯亮起来(Tasker 识别到我的连接WIFI网络或类似网络)。
由于 Raspberry 不是最强大的硬件,我想让事情尽可能简单。基本上,我需要这个:
一个HTTP get请求进来,例如:
/switch?device=1&action=on
根据这个请求,服务器应该将不知何故翻译成这样:
tdtool --on 1
我确信我会找到一种方法来使用 Apache 和 PHP 构建类似的东西,但我认为在我的情况下这有点过分了。你会推荐什么?是否有一些很酷的蟒蛇魔法可以实现这一点?还是一些带有 CGI 脚本的精美迷你网络服务器?非常感谢任何想法和代码示例,在此先感谢!
【问题讨论】:
标签: linux shell http webserver raspberry-pi