我在安装了 Wamp 的 Windows XP 机器上。目前,我正在使用 putty 连接我的远程 Linux 机器。
我想通过 php shell_exec() 方法(cp,ls,...)执行 Linux 命令。
有人知道如何先连接我的 Linux 机器,然后在 Windows 环境中运行这些命令吗?
任何建议将不胜感激......
我在安装了 Wamp 的 Windows XP 机器上。目前,我正在使用 putty 连接我的远程 Linux 机器。
我想通过 php shell_exec() 方法(cp,ls,...)执行 Linux 命令。
有人知道如何先连接我的 Linux 机器,然后在 Windows 环境中运行这些命令吗?
任何建议将不胜感激......
您不能Linux
在Windows
. 您可以SSH
使用putty
. 看来您正在运行。
您可以通过 ssh 转发连接。查看腻子屏幕,转到Connection > SSH > Tunnels
。
然后你添加一个隧道:
source port: 1234
destination port: localhost:80
type is Local
所以你打开Internet Explorer
,在地址栏中输入:然后将http://localhost:1234
端口1234
转发到80
远程 linux pc 上的端口。
您也可以通过设置将其转发到 WAMP
destination port: *ip of the wamp server*:80
然后你可以Windows
从网络外部访问电脑,只要它putty
正在运行。
听起来您希望 Windows 上的 PHP 脚本在远程 Linux 服务器上运行 SSH 命令。为此,请参阅PHP SSH2 扩展。
绑定到 libssh2 库,该库使用安全加密传输提供对远程机器上资源(shell、远程执行、隧道、文件传输)的访问。
这将允许您通过 SSH 连接到 Linux 服务器并在删除服务器上执行命令(cp
、ls
等)。这是一些示例代码:
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$stream = ssh2_exec($connection, 'hostname');
echo "Output: " . stream_get_contents($stream);
值得注意的是,这可能不是完成这项任务的最安全或最可靠的方式。
我不认为你可以在 Windows 机器上执行 linux 命令。
您可能要考虑使用适用于 Windows 的 OpenSSH 并跳过 php.ini 文件。
但是你会得到一个 Windows Shell。C:\\>
and no ls
or cp
,但完全控制。
您还可以进行实验并使用 linux 运行虚拟机并与它共享您的 Windows 驱动器。
remote server linux
- - ssh - - > local virtual linux
- - - 共享文件夹 - - >windows