雷火电竞-中国电竞赛事及体育赛事平台

歡迎來到入門教程網(wǎng)!

dedecms

當(dāng)前位置:主頁 > CMS教程 > dedecms >

DedeCms 防盜鏈無法下載遠(yuǎn)程圖片的解決方法

來源:本站原創(chuàng)|時(shí)間:2021-08-05|欄目:dedecms|點(diǎn)擊:

在使用DEDECMS時(shí),很多時(shí)候從一些網(wǎng)站復(fù)制的內(nèi)容時(shí),其中的圖片,保存時(shí)不能把遠(yuǎn)程圖片下載到本地,像新浪博客,網(wǎng)易等一些大型網(wǎng)站圖片有做防盜鏈處理,圖片地址并沒有后輟名!因此在使用dedecms默認(rèn)的下載遠(yuǎn)程功能沒辦法實(shí)現(xiàn)!
在發(fā)現(xiàn)了此問題,分析了下,發(fā)現(xiàn)其實(shí)要解決很簡單,發(fā)現(xiàn)DEDECMS在檢索遠(yuǎn)程圖片時(shí)的正則加了圖片格式匹配;
 
DEDECMS匹配的正則:preg_match_all("/(src)=[\"|'| ]{0,}(http:\/\/([^>]*)\.(gif|jpg|png))/isU",$body,$img_array);
 
而向新浪博客圖片:http://static2.photo.sina.com.cn/orignal/54a625bft848ec4ffa561&690&690 是沒有圖片后輟的,所在不能匹配下載了!
 
找到了問題,就知道怎么改了!
 
找到DEDECMS文件 /dede/inc/inc_archives_functions.php,找到函數(shù)
 
/獲得文章body里的外部資源
 
function GetCurContent($body,&$litpic,$autolitpic)
 
//獲得文章body里的外部資源
 
function GetCurContent($body)
 
大概在11行和89行把匹配遠(yuǎn)程圖片的規(guī)則
 
preg_match_all("/(src)=[\"|'| ]{0,}(http:\/\/([^>]*)\.(gif|jpg|png))/isU",$body,$img_array);
 
改成
 
preg_match_all("/src=[\"|'|\s]{0,}(http:\/\/([^>]*))(\"|'|\s)/isU",$body,$img_array);
 
就OK了
 
當(dāng)然DEDECMS這樣做是有它道理的,這樣只能匹配圖片,不會匹配到像JS,FLASH文件,但這樣也有很多不方便,因?yàn)槲覀冊诰庉媰?nèi)容時(shí),就能識別這是一個(gè)什么文件了!
 

上一篇:DedeCms去掉列表推薦時(shí)被加粗的修改方法

欄    目:dedecms

下一篇:DEDECMS文章列表每隔10行文章添加分隔虛線

本文標(biāo)題:DedeCms 防盜鏈無法下載遠(yuǎn)程圖片的解決方法

本文地址:http://www.jygsgssxh.com/a1/dedecms/16552.html

更多dedecms

您可能感興趣的文章

閱讀排行

本欄相關(guān)

隨機(jī)閱讀

網(wǎng)頁制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語言數(shù)據(jù)庫服務(wù)器

如果侵犯了您的權(quán)利,請與我們聯(lián)系,我們將在24小時(shí)內(nèi)進(jìn)行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負(fù)任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有