如何使用PHP

时间:2019-03-30 08:14:11

标签: php ssh imap php-socket

给出PHP 7.2,php ssh2扩展名和Ubuntu 18.04.1 LTS。我想通过ssh服务器与imap服务器通信。

直接连接:

$stream = fsockopen('ssl://imap.gmail.com', 993);

for($i = 0; $i<=5; $i++){
    var_dump(fgets($stream));
    sleep(2);
}

结果:

"* OK Gimap ready for requests from 178.150.167.73 u11mb208610367lfc
"

通过ssh连接:

$ssh_conn = ssh2_connect($sshIp, $sshPort);
if ($ssh_conn && ssh2_auth_password($ssh_conn, $sshUsername, $sshPassword)) {
    $stream = ssh2_tunnel($ssh_conn, 'imap.gmail.com', 993);

    for ($i = 0; $i <= 5; $i++) {
        var_dump(fgets($stream));
        sleep(2);
    }

}

输出:

bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)

SSH服务器100%工作。我尝试了其他工具,包括通过ssh进行imap的额外php扩展。但是我需要使用这种直接方式。

0 个答案:

没有答案