我有一个名为xyz.sh
的脚本,它使用zenity.执行时会为用户提供一个选择菜单.问题是这是我们的队友之一/home/dir
这是基于NFS的。通常,我们从执行 terminal.it 运行path/xyz.sh
。我试图将其制作为 url,当用户调用它时应该运行脚本并弹出选择菜单。
示例:http://abc.com/xyz
应该在用户远程计算机上执行xyz.sh
。 不在服务器上。
我不介意它是在Python中还是在CGI/PHP中。
更新:感谢您分享链接。我已经尝试并在火狐中创建了协议处理程序。如下所述。
首先打开about:config
然后我创建了一个外部协议。 network.protocol-handler.external.app.xyz.sh
,在字符串中,我提供了脚本的路径/home/xyz/xyz.sh
但是,当我从浏览器xyz调用它时:它再次给我错误,因为"Firefox确实知道如何打开这个地址。因为协议与任何程序无关"。
请帮我解决这个问题。提前谢谢。
不可能
在访问者计算机上运行任意脚本(出于显而易见的原因(。
最好的方法可能是告诉用户安装一些软件,该软件在浏览器中注册自定义协议,以便您可以将用户定向到类似
pythonexec://abc.com/xyz
如何做到这一点在其他SO帖子中进行了解释,例如:
- 如何创建自己的 URL 协议?(例如 so://...
- Linux 中的自定义协议?(适用于 Linux(