Maison  >  Article  >  Tutoriel CMS  >  Comment déterminer si le canal logiciel dedecms est téléchargé depuis ce site puis lister les miroirs ?

Comment déterminer si le canal logiciel dedecms est téléchargé depuis ce site puis lister les miroirs ?

藏色散人
藏色散人original
2020-01-11 09:54:181885parcourir

Comment déterminer si le canal logiciel dedecms est téléchargé depuis ce site puis lister les miroirs ?

Comment le canal du logiciel dedecms peut-il déterminer s'il s'agit d'un lien de téléchargement de ce site avant de lister le miroir ?

La méthode permettant de déterminer si la chaîne du logiciel Dedecms télécharge le lien depuis ce site puis répertorie les miroirs

Apprentissage recommandé : Dreamcms

Le canal du logiciel Dreamweaver dedecms détermine qu'il s'agit du lien de téléchargement de ce site, puis répertorie le miroir

et la liste des serveurs sont automatiquement générés", ce qui évite les problèmes et n'a pas besoin d'être rempli. dans chacun. Mais vous rencontrerez un problème lorsque le lien n'est pas local, la partie nom de domaine sera remplacée en fonction du lien d'adresse de téléchargement pour générer un point de téléchargement miroir. Cela provoquera une erreur car le site miroir n'a pas ce fichier dans son fichier. annuaire. Essayez donc de trouver un moyen de porter un jugement. Ce n'est que si vous connaissez votre propre nom de domaine que vous pourrez générer un point de téléchargement miroir.

Méthode de modification détaillée :

Trouvez le fichier include/taglib/channel/softlinks.lib.php, ajoutez un code de jugement comme suit, ajoutez simplement la partie en gras, nom de domaine xxx Veuillez remplacer. net avec votre propre nom de domaine de site Web.

Le code est le suivant :

if (strstr($firstLink, 'xxx.net')) //xiaoxin-20120818-判断是xxx.net域名下才出现镜像 
{ //xiaoxin-20120818-判断是xxx.net域名下才出现镜像 
$firstLink = preg_replace("#http:\/\/([^\/]*)\/#i", '/', $firstLink); 
foreach($sites as $site) 
{ 
if(trim($site)=='') continue; 
list($link,$serverName,$serverType) = explode('|', $site); 
if (!empty($link_type) && $link_type != trim($serverType)) continue; 
$link = trim( preg_replace("#\/$#", "", $link) ).$firstLink; 
$downloads = getDownloads($link); 
$uhash = substr(md5($link), 0, 24); 
if($row['gotojump']==1) 
{ 
$link = $phppath."/download.php?open=2&id={$refObj->ArcID}&uhash={$uhash}"; 
} 
$temp = str_replace("~link~", $link, $tempStr); 
$temp = str_replace("~server~", $serverName, $temp); 
$temp = str_replace("~downloads~", $downloads, $temp); 
$downlinks .= $temp; 
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn