問(wèn)題分析:dedecms 遠(yuǎn)程圖片本地化用到函數(shù) fsockopen函數(shù),環(huán)境要求空間相應(yīng)目錄可寫(xiě)外還要求php的allow_url_fopen 選項(xiàng)設(shè)置為On.
修改PHP的配置文件,打開(kāi)php.ini 文件里:
"allow_url_fopen = On"
為了防止WEB變種攻擊LINUX虛擬主機(jī)PHP 禁用allow_url_fopen功能,引用allow_url_fopen功能在客戶(hù)站點(diǎn)里運(yùn)行惡意程序.
如果上面解決不了我們看看是不是upload_tmp_dir沒(méi)開(kāi)打開(kāi):
upload_tmp_dir = "C:/php/tmp"
此項(xiàng)沒(méi)有設(shè)置,將upload_tmp_dir項(xiàng)前面的分號(hào)去掉,并在后面添加好路徑,上傳就OK了,給C:/php/tmp目錄users讀取權(quán)限即可解決問(wèn)題,當(dāng)然如果你沒(méi)有服務(wù)器權(quán)限,那么我們只要在程序上進(jìn)行操作了.
打開(kāi)/include/dedehttpdown.class.php文件
找到
$this->m_fp = @fsockopen($this->m_host, $this->m_port, $errno, $errstr,10);
改成
$this->m_fp = @stream_socket_client($this->m_host . ':' . $this->m_port, $errno, $errstr,10);
保存之后試一下看看是不是可以了。