【发布时间】:2026-01-27 09:50:01
【问题描述】:
您好我正在尝试使用 Phpseclib 连接到我的专用服务器,然后附加到屏幕进程,然后在屏幕进程中执行命令并返回结果,
我可以让 php 连接到服务器,我认为重新连接到屏幕进程,但我尝试回显的命令只是返回“1”而不是我的预期。
<?php
set_include_path(get_include_path() . PATH_SEPARATOR . '.././static/classes/phpseclib');
include('.././static/classes/phpseclib/Net/SFTP.php');
//SSH Run Command
$ssh = new Net_SSH2($host);
if (!$ssh->login($user,$pass)) {
exit('Login Failed SSH');
}
//Run the server
echo 'Attaching to screen process...';
$ssh->exec('screen -r server1');
echo 'Attached';
echo $ssh->write('status\n');
?>
如果有人能对我的问题有所了解,我将不胜感激。
还有更多信息我这样连接的原因是因为它是我要连接的 SRCDS 服务器,我可以使用 php 脚本来查询 srcds 游戏服务器,但它不会工作,因为我在共享虚拟主机上阻止我需要连接的端口。
【问题讨论】:
标签: php ssh gnu-screen phpseclib