最近,很多織夢(mèng)站長(zhǎng)朋友都遇到了這樣的問題,在帶織夢(mèng)的后臺(tái)模塊列表時(shí)發(fā)現(xiàn)模塊列表顯示沒有內(nèi)容,里面沒有一個(gè)模塊顯示,導(dǎo)致不能卸載模塊。
這里我們就給大家分析一下織夢(mèng)的后臺(tái)模塊列表無(wú)法顯示的原因,并分享一下解決的方法!
第一種可能的情況:一般來(lái)說,Dede V5.7以后的版本出現(xiàn)管理列表無(wú)法顯示的情況多一些,基本上是因?yàn)楣俜綄⒑笈_(tái)模塊的列表遠(yuǎn)程的放在了官方服務(wù)器上了。雖然這樣可以讓織夢(mèng)的用戶安全的獲取官方的模塊,但有時(shí)網(wǎng)站在某個(gè)時(shí)間段連接不上遠(yuǎn)程的織夢(mèng)官方服務(wù)器,就可能無(wú)法寫入模塊列表文件內(nèi)容,造成模塊列表空白,并且我們打開“/data/module/moduleurllist.txt”文件我們會(huì)發(fā)現(xiàn)里面沒有內(nèi)容,所以說,/data/module/moduleurllist.txt模塊列表文件沒有內(nèi)容是織夢(mèng)模塊管理列表空白的直接原因。
解決辦法:
打開織夢(mèng)后臺(tái)管理目錄下的module_main.php文件,注釋掉大約91行和95行的如下兩行代碼:
$modules_remote = $dm->GetModuleUrlList($moduletype,$mdurl);
$modules = array_merge($modules,$modules_remote);
這樣織夢(mèng)模塊管理程序就不會(huì)從遠(yuǎn)程去獲取織夢(mèng)官方的模塊列表,而是從本地獲取列表了。
第二種情況:還有一種情況也會(huì)造成織夢(mèng)管理模塊管理后臺(tái)的列表無(wú)法顯示,那就是禁用了fsockopen()函數(shù),這個(gè)函數(shù)是織夢(mèng)用來(lái)獲取遠(yuǎn)程模塊管理列表的。
解決辦法:
可以用第一種禁止織夢(mèng)遠(yuǎn)程獲取管理列表;另外就是開啟fsockopen()函數(shù),如果你的服務(wù)里主機(jī)支持這么做的話。
第三種情況:下載源碼下來(lái)后在本地安裝后臺(tái)模塊可以正常顯示,但是上傳到空間之后模塊卻不能顯示。
解決辦法:
這種情況一般是你的空間參數(shù)或者設(shè)置的問題,你可以咨詢空間商,或者試圖嘗試下面的解決方法:
將include中的文件dedehttpdown.class.php進(jìn)行相關(guān)的修改,具體就是將
$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);
第四種情況:開始模塊正常顯示,但是后來(lái)安裝了其他模塊插件后突然發(fā)現(xiàn)模塊列表不見了,這種你情況主要有以下兩種原因:
(1)data/module/中的moduleurllist.txt文件被破壞,這時(shí)我們可以下載下來(lái)打開看一下,如果內(nèi)容為空,就說明被破壞了,我們從源碼中提取一個(gè)覆蓋上去就行了;
(2)module_main.php文件受損,我們從源碼中提取出來(lái)上傳覆蓋即可,這里強(qiáng)調(diào)的是,做這些之前,一定要備份,防止出現(xiàn)意想不到情況,因?yàn)槌绦蜻@個(gè)東西不穩(wěn)定因素還是比較多的
當(dāng)然,織夢(mèng)DedeCMS后臺(tái)模塊管理列表不顯示的原因還有其他的,比如織夢(mèng)程序沒有足夠的權(quán)限,無(wú)法寫入/data/module/moduleurllist.txt文件,也會(huì)造成列表空白的。
關(guān)于織夢(mèng)后臺(tái)模塊列表不顯示的幾個(gè)原因大概就這么幾個(gè)吧,如果按照上面的方法還是不能解決問題的話還是建議你備份一下數(shù)據(jù)庫(kù),然后重新安裝一個(gè)全新的織夢(mèng)程序再還原數(shù)據(jù)庫(kù)吧。
|