簡體   English   中英

PHP中的fsockopen在服務器上不起作用

[英]fsockopen in php not working on server

這是我的代碼:

$fp = fsockopen("74.63.172.37", 22, $errno, $errstr, 50);

if (!$fp) {

    echo "not connected";

} else {

    $out = "GET / HTTP/1.1\r\n";
    $out .= "Host: 74.63.172.37\r\n";
    $out .= "Connection: Close\r\n\r\n";
    fwrite($fp, $out);
    $val = "";
    if (!feof($fp)) {
        echo "<br/>".fgets($fp, 128);
    }

    if (feof($fp)) {
        echo "<br/>Not connected";
    } else {
      echo "<br/>Connected";
    }

    fclose($fp);

    die();
}

在本地服務器上,它給了我一個輸出:

trying to connect
SSH-2.0-1.82_sshlib GlobalSCAPE
Connected

而在服務器上,它給了我一個輸出:

trying to connect
Not connected

我有另一個sftp服務器,可以在其中從服務器和本地連接。 可能是什么問題?

您的ISP未啟用它,或者端口被阻止。 我建議您與服務台聯系。

我可以想到兩個選擇:

目標服務器將僅接受來自特定IP地址的連接,而您的Web服務器不在該服務器上。

您的網絡服務器上的Open SSL版本不兼容,因此無法商定用於連接的密碼。 或嘗試回退到協議1,但將目標服務器配置為僅允許協議2(最新)。

因此-檢查目標服務器上是否有防火牆限制,並檢查openssl是否為最新,並且密碼在Web服務器上均可用。

謝謝,我找到了解決方案。 目標主機已阻止我的服務器IP地址。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM