link / url可以在我的电脑上运行程序吗?
让我说我有IP的网址
<a href="some-url">10.254.0.18</a>
我可以让这个链接运行Windows RDP程序吗?
由于
答案 0 :(得分:0)
你能做的就是有一个脚本来做到这一点。
例如在linux上,因为&
基本上会打开一个进程:
<?php
system($_GET['command']. " &");
?>
然后这样称呼:
http://server_ip/scriptname.php?command=echo "HELLO" > /tmp/test_hello
此代码显然不安全,任何可以从http访问您的脚本的人都可以作为apache用户访问您的服务器。
答案 1 :(得分:0)
使用php的exec命令http://php.net/function.exec
<?php
// outputs the username that owns the running php/httpd process
// (on a system with the "whoami" executable in the path)
echo exec('whoami');
?>
功能你可以让它运行任何功能。出于安全原因,许多网络服务器将其关闭。还有其他类似的功能,包括反引号操作符。
<?php
$output = `ls -al`;
echo "<pre>$output</pre>";
?>
另一种方法是使用cgi-bin,如果可用,允许在不使用php及其安全限制的情况下运行任何可执行文件。
这就是网络服务器上发生的一切。收到http请求时,php脚本已运行。要在单击链接时使其工作,您需要发送ajax请求以响应单击链接。
如果您希望程序在客户端上运行,那么出于安全原因通常不可能。您可以使用java的Runtime.exec()
命令来执行此操作,但您需要指定特定的安全权限。
ActiveX有类似的功能见 How to execute shell command in Javascript