2012-07-01 129 views
0

我需要將一個帳戶轉移到不同的服務器。最大的問題是:一個有交友(好!)和其他定製品牌面板(差=()所以,我鑫卡特:??如何用PHP來傳輸(怎麼不知道)傳輸文件服務器到服務器

我知道服務器支持Exec和我有Jailsshell(SSH),但是,wget的禁用不知道關於其他限制理念

我已經試過這樣:?

function ftp($host, $username, $password, $local, $remote) { 
    $execTime = 7000; 
    ini_set('max_execution_time', $execTime); 
    set_time_limit($execTime); 

    $c = ftp_connect($host); 
    ftp_set_option($c, FTP_TIMEOUT_SEC, $execTime); 
    ftp_login($c, $username, $password) or die("Can't login"); 

    ftp_get($c, $local, $remote, FTP_ASCII); 

    ftp_close($c) or die("Can't close"); 
} 

,但得到的請求超時..

+1

你認爲要壓縮一切,並用file_get_contents()&file_put_contents()創建一個php文件嗎? – HamZa

+0

@HamZaDzCyber​​DeV不起作用。看到我更新的問題。 –

+0

嘗試在你的代碼的頂部這個:ini_set('max_execution_time',0); – HamZa

回答

0

你可以從exec訪問scp嗎?它允許從一個h複製文件結構ost到另一個。

+0

千萬不要閱讀有關SCP。 –

+0

如果您有至少一臺主機的ssh訪問權限,另一臺可以訪問scp,您可以將數據推送或拉出。它最簡單的一個文件,所以如果你可以首先將其打成一個更容易的文件。 scp [[user @] host1:] file1 [[user @] host2:] file2 這就是你如何使用它的基本術語 – lordzero

0

首先我會通過ssh或telnet登錄到服務器的網站。下面是我可以鍵入命令:

cd /home/somepath/to/yourwebsite/public_html 
tar -cvf sitepack.tar ./ 

一旦完成我將轉到新的服務器,並通過Telnet和SSH登錄。在這裏,我會輸入:

cd /home/somepath/to/yourwebsite/public_html 
wget yourdomain.com/sitepack.tar 
tar -xvf sitepack.tar 

在這一點上,我會檢查,以確保正確的所有者和組在您剛剛解壓縮的文件上。你可以檢查,看看他們是什麼鍵入:

ls -la 

如果所有者或組是錯誤的,你可以鍵入此修復所有文件:

chown -R owner.group ./ 

owner.group應與被替換您想要的所有者名稱以及您想要的組名稱。這將遞歸地遍歷所有文件和目錄,並將它們更改爲正確的所有者和組。

+0

wget被禁用。 –

+0

在新盒子上......然後只需通過ftp下載tar文件並將其上傳到新服務器並執行tar -xvf sitepack.tar –

+0

我只需要服務器 - >服務器連接 –

相關問題