ftp在當(dāng)?shù)啬芡h(yuǎn)程服務(wù)器上傳文件,但是放到服務(wù)器上就不好使了
Jun 13, 2016 pm 12:22 PM
ftp在本地能往遠(yuǎn)程服務(wù)器上傳文件,但是放到服務(wù)器上就不好使了
網(wǎng)站購買的萬網(wǎng)的虛擬主機(jī),無法修改php.ini,也沒有辦法是用.htaccess來修改上傳文件大小,故上傳大于10M的文件只好使用ftp方式,代碼如下:
????????$ftp_server=?"xxxx.xxxx.com";
$ftp_user_name=?"xxxx";
$ftp_user_pass=?"xxxxx";
$local_file?=?"D:/Lyb_0/zmsgx.mp4";????????//本地文件
$server_file?=?"htdocs/videos/zmsgx.mp4";??//待上傳后文件所在路徑
$conn_id?=?ftp_connect($ftp_server);?????????//聯(lián)接FTP
$login_result?=?ftp_login($conn_id,$ftp_user_name,$ftp_user_pass)?or?die("Login?error");??//登錄
$fp=fopen($local_file,"r");
ftp_pasv($conn_id,?true);???//開啟被動模式傳輸?
//上傳參數(shù)
if(ftp_fput($conn_id,$server_file,$fp,FTP_BINARY))?{
????echo?"Successfully?uploaded?$server_file\n";
}else{
????echo?"There?was?a?problem?while?uploading?$file\n";
}
//關(guān)閉連接
ftp_close($conn_id);
fclose($fp);
???????但是這段代碼只在本地好使,放到服務(wù)器上就好使了,fopen($local_file,"r");無法打開本地文件。請問如何解決?
------解決思路----------------------
你先確認(rèn)?fopen?是否可用
在服務(wù)器上所謂“本地文件”是指服務(wù)器上的文件
所以你使用?ftp?繞過?upload?限制的做法,是不現(xiàn)實(shí)的
------解決思路----------------------
$local_file
這個(gè)無法取到本地文件吧。
------解決思路----------------------
class?Ftp{
????
????public?$ftpconn;
????public?static?$_instance????=???array();
????private?function?__construct($host,$username,$password)?{
????????$this->ftpconn??=?ftp_connect($host);
????????$this->login($username,?$password);
????}
????public?function?login($username,?$password){
????????ftp_login($this->ftpconn,?$username,?$password);
????}
????public?static?function?getInstance($host,$username,$password){
????????$key????=???md5($host.'-'.$username.'-'.$password);
????????if(!isset(self::$_instance[$key])?
------解決思路----------------------
?!(self::$_instance[$key]?instanceof?self)){
????????????self::$_instance[$key]??=???new?self($host,?$username,?$password);
????????}
????????return?self::$_instance[$key];
????}
????public?function?__clone(){
????????trigger_error('該類禁止克隆',E_USER_ERROR);
????}
????public?function?__destruct()?{
????????ftp_close($this->ftpconn);
????}
????public?function?nlist($dir){
???????$filelist???=?ftp_nlist($this->ftpconn,?$dir);
???????return?$filelist;
????}
????//切換當(dāng)前目錄的父目錄
????public?function?cdup(){
????????return?ftp_cdup($this->ftpconn);
????}
????//在?FTP?服務(wù)器上改變當(dāng)前目錄
????public?function?chdir($dir){
????????return?@ftp_chdir($this->ftpconn,?$dir);
????}
????//修改文件權(quán)限
????public?function?chmod?($dir,$mode){
????????return?ftp_chmod($this->ftpconn,?$mode,?$dir);
????}
????//刪除文件
????public?function?delete($filename){
????????return?ftp_delete($this->ftpconn,?$filename);
????}
????//請求運(yùn)行一條?FTP?命令(true,false)
????public?function?exec($command){
????????return?ftp_exec($this->ftpconn,$command);
????}
????//從?FTP?服務(wù)器上下載一個(gè)文件并保存到本地一個(gè)已經(jīng)打開的文件中
????//mode傳輸模式只能為?(文本模式)?FTP_ASCII?或?(二進(jìn)制模式)?FTP_BINARY?其中的一個(gè)。?
????public?function?fget?($handle,$remote_file,$mode,$resumepos?=?0){
????????return?ftp_fget($this->ftpconn,$handle,$remote_file,$mode,$resumepos);
????}
????//上傳一個(gè)已經(jīng)打開的文件到?FTP?服務(wù)器
????//mode傳輸模式只能為?(文本模式)?FTP_ASCII?或?(二進(jìn)制模式)?FTP_BINARY?其中的一個(gè)。?
????public?function?fput?($remote_file,$handle,$mode,$resumepos?=?0?){
????????return?ftp_fput($this->ftpconn,$remote_file,$handle,$mode,$resumepos);
????}
????//返回當(dāng)前?FTP?連接的各種不同的選項(xiàng)設(shè)置
????public?function?get_option($option=FTP_TIMEOUT_SEC){
????????return?ftp_get_option($this->ftpconn,$option);
????}
????//從?FTP?服務(wù)器上下載一個(gè)文件
????public?function?get($local_file,$remote_file?,$mode,$resumepos=0){
????????return?ftp_get($this->ftpconn,$local_file,$remote_file?,$mode,$resumepos);
????}
????//返回指定文件的最后修改時(shí)間
????public?function?mdtm?($remote_file){
????????return?ftp_mdtm?($this->ftpconn,$remote_file);
????}
????//建立新目錄
????public?function?mkdir($dir,$directory){
????????$this->chdir($dir);
????????return?@ftp_mkdir($this->ftpconn,$directory);
????}
????//連續(xù)獲取/發(fā)送文件(non-blocking)
????public?function?nb_continue(){
????????return?ftp_nb_continue($this->ftpconn);
????}
????//Retrieves?a?file?from?the?FTP?server?and?writes?it?to?an?open?file?(non-blocking)
????public?function?nb_fget?($handle,$remote_file,$mode,$resumepos?=?0){
????????return?ftp_nb_fget?($this->ftpconn,$handle,$remote_file,$mode,$resumepos);
????}
????//Stores?a?file?from?an?open?file?to?the?FTP?server?(non-blocking)
????public?function?nb_fput?($remote_file,$handle,$mode,$resumepos?=?0?){
????????return?ftp_nb_fput?($this->ftpconn,$remote_file,$handle,$mode,$resumepos);
????}
????//從?FTP?服務(wù)器上獲取文件并寫入本地文件(non-blocking)
????public?function?nb_get?($local_file,$remote_file?,$mode,$resumepos=0){
????????return?ftp_nb_get?($this->ftpconn,$local_file,$remote_file?,$mode,$resumepos);
????}
????//存儲一個(gè)文件至?FTP?服務(wù)器(non-blocking)
????public?function?nb_put?($remote_file?,$local_file,$mode,$resumepos=0){
????????return?ftp_nb_put?($this->ftpconn,$remote_file?,$local_file,$mode,$resumepos);
????}
????//返回當(dāng)前?FTP?被動模式是否打開
????public?function?pasv($pasv){
????????return?ftp_pasv($this->ftpconn,$pasv);
????}
????//上傳文件到?FTP?服務(wù)器
????public?function?put?($remote_file?,$local_file,$mode,$resumepos=0){
????????return?ftp_put?($this->ftpconn,$remote_file?,$local_file,$mode,$resumepos);
????}
????//返回當(dāng)前目錄名
????public?function?pwd?(){
????????return?ftp_pwd?($this->ftpconn);
????}
????//Sends?an?arbitrary?command?to?an?FTP?server
????public?function?raw?($command){
????????return?ftp_raw?($this->ftpconn,$command);
????}
????//返回指定目錄下文件的詳細(xì)列表
????public?function?rawlist($directory){
????????return?ftp_rawlist($this->ftpconn,$directory);
????}
????//更改?FTP?服務(wù)器上的文件或目錄名
????public?function?rename($oldname?,$newname){
????????return?ftp_rename($this->ftpconn,$oldname?,?$newname);
????}
????//刪除?FTP?服務(wù)器上的一個(gè)目錄
????public?function?rmdir($directory){
????????return?ftp_rmdir($this->ftpconn,$directory);
????}
????//設(shè)置各種?FTP?運(yùn)行時(shí)選項(xiàng)
????public?function?set_option?($option,$value){
????????return?ftp_set_option?($this->ftpconn,$option,$value);
????}
????//向服務(wù)器發(fā)送?SITE?命令
????public?function?site?($cmd){
????????return?ftp_site?($this->ftpconn,$cmd);
????}
????//返回指定文件的大小
????public?function?size?($remote_file){
????????return?ftp_size?($this->ftpconn,$remote_file);
????}
????//Opens?an?Secure?SSL-FTP?connection
????public?function?ssl_connect($host){
????????$this->ftpconn??=????ftp_ssl_connect($host);
????}
????//返回遠(yuǎn)程?FTP?服務(wù)器的操作系統(tǒng)類型
????public?function?systype?(){
????????return?ftp_systype?($this->ftpconn);
????}
}

熱AI工具

Undress AI Tool
免費(fèi)脫衣服圖片

Undresser.AI Undress
人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover
用于從照片中去除衣服的在線人工智能工具。

Clothoff.io
AI脫衣機(jī)

Video Face Swap
使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費(fèi)的代碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
功能強(qiáng)大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級代碼編輯軟件(SublimeText3)

Windows11將清新優(yōu)雅的設(shè)計(jì)帶到了最前沿;現(xiàn)代界面允許您個(gè)性化和更改最精細(xì)的細(xì)節(jié),例如窗口邊框。在本指南中,我們將討論分步說明,以幫助您在Windows操作系統(tǒng)中創(chuàng)建反映您的風(fēng)格的環(huán)境。如何更改窗口邊框設(shè)置?按+打開“設(shè)置”應(yīng)用。WindowsI轉(zhuǎn)到個(gè)性化,然后單擊顏色設(shè)置。顏色更改窗口邊框設(shè)置窗口11“寬度=”643“高度=”500“>找到在標(biāo)題欄和窗口邊框上顯示強(qiáng)調(diào)色選項(xiàng),然后切換它旁邊的開關(guān)。若要在“開始”菜單和任務(wù)欄上顯示主題色,請打開“在開始”菜單和任務(wù)欄上顯示主題

“你的組織要求你更改PIN消息”將顯示在登錄屏幕上。當(dāng)在使用基于組織的帳戶設(shè)置的電腦上達(dá)到PIN過期限制時(shí),就會發(fā)生這種情況,在該電腦上,他們可以控制個(gè)人設(shè)備。但是,如果您使用個(gè)人帳戶設(shè)置了Windows,則理想情況下不應(yīng)顯示錯(cuò)誤消息。雖然情況并非總是如此。大多數(shù)遇到錯(cuò)誤的用戶使用個(gè)人帳戶報(bào)告。為什么我的組織要求我在Windows11上更改我的PIN?可能是您的帳戶與組織相關(guān)聯(lián),您的主要方法應(yīng)該是驗(yàn)證這一點(diǎn)。聯(lián)系域管理員會有所幫助!此外,配置錯(cuò)誤的本地策略設(shè)置或不正確的注冊表項(xiàng)也可能導(dǎo)致錯(cuò)誤。即

默認(rèn)情況下,Windows11上的標(biāo)題欄顏色取決于您選擇的深色/淺色主題。但是,您可以將其更改為所需的任何顏色。在本指南中,我們將討論三種方法的分步說明,以更改它并個(gè)性化您的桌面體驗(yàn),使其具有視覺吸引力。是否可以更改活動和非活動窗口的標(biāo)題欄顏色?是的,您可以使用“設(shè)置”應(yīng)用更改活動窗口的標(biāo)題欄顏色,也可以使用注冊表編輯器更改非活動窗口的標(biāo)題欄顏色。若要了解這些步驟,請轉(zhuǎn)到下一部分。如何在Windows11中更改標(biāo)題欄的顏色?1.使用“設(shè)置”應(yīng)用按+打開設(shè)置窗口。WindowsI前往“個(gè)性化”,然

任務(wù)欄縮略圖可能很有趣,但它們也可能分散注意力或煩人。考慮到您將鼠標(biāo)懸停在該區(qū)域的頻率,您可能無意中關(guān)閉了重要窗口幾次。另一個(gè)缺點(diǎn)是它使用更多的系統(tǒng)資源,因此,如果您一直在尋找一種提高資源效率的方法,我們將向您展示如何禁用它。不過,如果您的硬件規(guī)格可以處理它并且您喜歡預(yù)覽版,則可以啟用它。如何在Windows11中啟用任務(wù)欄縮略圖預(yù)覽?1.使用“設(shè)置”應(yīng)用點(diǎn)擊鍵并單擊設(shè)置。Windows單擊系統(tǒng),然后選擇關(guān)于。點(diǎn)擊高級系統(tǒng)設(shè)置。導(dǎo)航到“高級”選項(xiàng)卡,然后選擇“性能”下的“設(shè)置”。在“視覺效果”選

您是否在Windows安裝程序頁面上看到“出現(xiàn)問題”以及“OOBELANGUAGE”語句?Windows的安裝有時(shí)會因此類錯(cuò)誤而停止。OOBE表示開箱即用的體驗(yàn)。正如錯(cuò)誤提示所表示的那樣,這是與OOBE語言選擇相關(guān)的問題。沒有什么可擔(dān)心的,你可以通過OOBE屏幕本身的漂亮注冊表編輯來解決這個(gè)問題??焖傩迯?fù)–1.單擊OOBE應(yīng)用底部的“重試”按鈕。這將繼續(xù)進(jìn)行該過程,而不會再打嗝。2.使用電源按鈕強(qiáng)制關(guān)閉系統(tǒng)。系統(tǒng)重新啟動后,OOBE應(yīng)繼續(xù)。3.斷開系統(tǒng)與互聯(lián)網(wǎng)的連接。在脫機(jī)模式下完成OOBE的所

屏幕亮度是使用現(xiàn)代計(jì)算設(shè)備不可或缺的一部分,尤其是當(dāng)您長時(shí)間注視屏幕時(shí)。它可以幫助您減輕眼睛疲勞,提高易讀性,并輕松有效地查看內(nèi)容。但是,根據(jù)您的設(shè)置,有時(shí)很難管理亮度,尤其是在具有新UI更改的Windows11上。如果您在調(diào)整亮度時(shí)遇到問題,以下是在Windows11上管理亮度的所有方法。如何在Windows11上更改亮度[10種方式解釋]單顯示器用戶可以使用以下方法在Windows11上調(diào)整亮度。這包括使用單個(gè)顯示器的臺式機(jī)系統(tǒng)以及筆記本電腦。讓我們開始吧。方法1:使用操作中心操作中心是訪問

在Windows11上的顯示縮放方面,我們都有不同的偏好。有些人喜歡大圖標(biāo),有些人喜歡小圖標(biāo)。但是,我們都同意擁有正確的縮放比例很重要。字體縮放不良或圖像過度縮放可能是工作時(shí)真正的生產(chǎn)力殺手,因此您需要知道如何對其進(jìn)行自定義以充分利用系統(tǒng)功能。自定義縮放的優(yōu)點(diǎn):對于難以閱讀屏幕上的文本的人來說,這是一個(gè)有用的功能。它可以幫助您一次在屏幕上查看更多內(nèi)容。您可以創(chuàng)建僅適用于某些監(jiān)視器和應(yīng)用程序的自定義擴(kuò)展配置文件??梢詭椭岣叩投擞布男阅?。它使您可以更好地控制屏幕上的內(nèi)容。如何在Windows11

Windows上的激活過程有時(shí)會突然轉(zhuǎn)向顯示包含此錯(cuò)誤代碼0xc004f069的錯(cuò)誤消息。雖然激活過程已經(jīng)聯(lián)機(jī),但一些運(yùn)行WindowsServer的舊系統(tǒng)可能會遇到此問題。通過這些初步檢查,如果這些檢查不能幫助您激活系統(tǒng),請?zhí)D(zhuǎn)到主要解決方案以解決問題。解決方法–關(guān)閉錯(cuò)誤消息和激活窗口。然后,重新啟動計(jì)算機(jī)。再次從頭開始重試Windows激活過程。修復(fù)1–從終端激活從cmd終端激活WindowsServerEdition系統(tǒng)。階段–1檢查Windows服務(wù)器版本您必須檢查您使用的是哪種類型的W
