簡體   English   中英

無法使用php連接到外部FTPS服務器

[英]Cannot connect to external FTPS server with php

我需要從位於ftp服務器上的.gz文件提取數據。 FTP服務器使用IP白名單,因此我提交了我的本地IP和網站IP(我使用gethostbyname來獲取IP),這兩個文件均已獲得批准。

在本地,我可以運行以下代碼來訪問文件:

$url="ftp://username:password@host/targetfile.gz";
$xml = simplexml_load_file("compress.zlib://$url") or die ("Cannot load file");

這運行得非常好,它使我可以從XML文件提取數據。

但是,當我在服務器上運行腳本時,沒有連接。 我聯系了運行ftp服務器的管理員,他們告訴我他們僅允許FTPS連接。

因此,我繼續執行以下代碼嘗試建立連接:

$conn_id = ftp_ssl_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user, $ftp_pass);

if (!$login_result) {
    die("Cannot login.");
}

echo ftp_pwd($conn_id); // /

// close the ssl connection
ftp_close($conn_id);

這也沒有連接。 我對使用PHP和FTP進行FTP連接是不熟悉的,從這一點上我不知道如何進行。

已啟用OpenSSL。

誰能指出我正確的方向?

編輯:這些是錯誤消息:

當我使用最上面的代碼塊時,會發生以下情況:

警告:simplexml_load_file():I / O警告:無法加載外部實體“ compress.zlib:// username:password@ftp.thehost.com/targetfile.gz”; 在第13行的/path/to/my/website/folder/htdocs/mydomain.com/feeds/script.php中

當我使用底部的代碼塊時,出現以下錯誤:

警告:ftp_login()期望參數1為資源,在第16行的/path/to/my/website/folder/htdocs/mydomain.com/feeds/script.php中給定的布爾值無法登錄。

我無權訪問日志文件afaik

我認為我們在這里沒有什么可以幫助您的。

Web服務器和FTP服務器之間沒有網絡連接。

請注意,這不一定是因為Web服務器尚未在FTP服務器上列入白名單。 Web服務器也可能不允許傳出連接。

暫無
暫無

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

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