DEDECMS5.5在國外Linux主機(jī)下無法采集的解決方法
時(shí)間: 2019-05-13 11:30
閱讀: 次
作者:素材無憂網(wǎng)
遂想起此前似乎見過文章說Dreamhost的主機(jī)禁用了allow_url_fopen,導(dǎo)致無法采集。于是乎在網(wǎng)上找啊找,找到了幾篇文章均是自己編譯php來讓Dreamhost支持采集。于是乎也參照Dreamhost官網(wǎng)的介紹,透過ssh,折騰了大半天終于完成了編譯好自己的php,興高采烈的跑上系統(tǒng)采集一下,依舊失敗告終。上傳個(gè)探針一看,allow_url_fopen確實(shí)是啟用著,怪哉。再繼續(xù)Google之,隨后反復(fù)測(cè)試證明,其實(shí)Dreamhost默認(rèn)是啟用了allow_url_fopen的,網(wǎng)上那些介紹的文章基本都是08年或以前的文章,所以想必是Dreamhost自己想通了放開這個(gè)限制吧。
折騰了兩天,偏不信邪,上傳多個(gè)Supesite和php168上去,安裝、采集一氣呵成。你個(gè)乖乖,原來是dede自己采集不了。納悶。上dede官網(wǎng)搜尋一番,也發(fā)現(xiàn)有些網(wǎng)友也是在反應(yīng)在國外Linux主機(jī)下采集不了。于是乎,終于找到了解決方法,就是改個(gè)文件而已。原先發(fā)現(xiàn)解決方法的那篇文章忘記在哪看了,只有本機(jī)的一個(gè)改后的文件而已,在此謝過那位老兄。
出問題的文件在include/dedehttpdown.class.php這個(gè)文件,用本文提供的附件覆蓋上去后,便可以暢快的使用采集功能,在發(fā)表文章時(shí)亦能舒爽的使用“下載遠(yuǎn)程圖片和資源”這個(gè)功能。經(jīng)過比對(duì)這個(gè)文件,發(fā)現(xiàn)修改了兩處地方。
1、注釋掉第280行的代碼,如下:
代碼如下:
// fputs($this->m_fp, $headString);
2、找到304行的代碼,替換成如下代碼:
代碼如下:
$headString .= "Connection: Close\r\n\r\n";
//fputs($this->m_fp,"Connection: Close\r\n\r\n");
3、找到308行的代碼,替換成如下代碼:
代碼如下:
$headString .= "\r\n";
//fputs($this->m_fp,"\r\n");
4、在315行的代碼“//獲取應(yīng)答頭狀態(tài)信息”上面插入如下代碼:
代碼如下:
fputs($this->m_fp, $headString);
最后大功告成,你也可以下載我修改好的代碼,點(diǎn)擊下載。
標(biāo)簽: