DEDECMS(織夢)開啓遠程(多站點)二級域名附件後,內容圖片和縮略圖網址路徑不正常解決辦法(完美彙總)

DEDECMS(織夢)開啓遠程(多站點)二級域名附件後,內容圖片和縮略圖網址路徑不正常解決。在網上找了好多關於dedecms遠程、附件目錄的二級域名、遠程發佈相關的教程。最後整理了一套完整解決辦法:

一、首先進去dedcms後臺開啓對應的設置

1.核心設置

 (是/否)支持多站點,開啓此項後附件、欄目連接、arclist內容啓用絕對網址:是
是否啓用遠程站點:是
是否發佈和編輯文檔時遠程發佈(啓用遠程站點的前提下):是

2.其它選項

附件目錄是否綁定爲指定的二級域名:是
附件目錄的二級域名:填寫對應的二級域名

二、方案1(去掉圖片的絕對地址鏈接方式)

舉例:絕對路徑:https://www.nongyejing.com/case/ 相對路徑:/case/

1.找到/include/arc.listview.class.php,找到

$row['litpic'] = $GLOBALS['cfg_mainsite'].$row['litpic'];

修改爲:

$row['litpic'] = $row['litpic'];

2、這隻能在列表頁有用,首頁還是有問題,繼續找到/include/taglib/arclist.lib.php,找到

$row['litpic'] = $GLOBALS['cfg_mainsite'].$row['litpic'];

修改爲:

$row['litpic'] = $row['litpic'];

這樣就完美解決絕對路徑和站外圖片的引用問題了。但是這個方案感覺不太合理。在繼續往下。

三、方案2(通過函數方法修改),

1、修改目錄include下的文件extend.func.php,在最後面添加一個函數方法。

function replaceurl($newurl)
{
//這裏可以替換成附件服務器的二級域名。例如:news.vrgc.com.cn
$newurl=str_replace('src="/uploads/allimg/','src="http://你的域名/uploads/allimg/',$newurl);
return $newurl;
}

2、文章模板中調用文章內容的標籤{dede:field.body/}

替換成:{dede:field.body function='replaceurl(@me)'/}

ok,完成上面的操作後,再創建新文章時,文章中的圖片路徑默認就是生成絕對路徑了。但是感覺還是沒那麼完美。後續繼續整理其它辦法。。。。比較適合空間比較有限的服務器或虛擬主機。站外圖片最好引用自己用了CDN加速的二級域名上的附件,這樣圖片打開速度快,低性能的服務器一樣可以秒開。

部分方法參考自網絡。以及www.ibixue.com 的整理。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章