Maison > Tutoriel CMS > DEDECMS > Comment dedecms configure le multisite Apache

Comment dedecms configure le multisite Apache

angryTom
Libérer: 2019-07-20 09:18:48
original
2502 Les gens l'ont consulté

Comment dedecms configure le multisite Apache

Tutoriels recommandés : Tutoriel DEDECMS

Connaissances préliminaires :

Pour faire simple, le paramétrage multi-site de DreamWeaver consiste à utiliser un répertoire du site web comme répertoire racine d'un nom de domaine. Il existe deux situations :

La première consiste à utiliser la colonne de premier niveau comme répertoire racine du nom de domaine de deuxième niveau, puis les sous-colonnes sous la colonne de premier niveau doivent être sous le répertoire de colonnes de premier niveau ;

La seconde consiste à utiliser le répertoire sans colonne comme répertoire racine du nom de domaine de deuxième niveau, comme le site mobile m.xxx.com

Étapes de configuration

Première étape : activer la prise en charge multi-sites dans les paramètres système de base => Paramètres de base => , la capture d'écran est la suivante :

Comment dedecms configure le multisite Apache

Étape 2 : Définissez la colonne pour qu'elle soit liée au nom de domaine de deuxième niveau en tant que canal. Faites attention au répertoire dans lequel la colonne est enregistrée. Il est généralement défini sur un répertoire de premier niveau. Par exemple, j'ai défini le répertoire racine ici. Remarque : Le chemin de sauvegarde de la sous-colonne doit être sous ce répertoire. La capture d'écran est la suivante :

Comment dedecms configure le multisite Apache

Étape. 3 : Basculez Allez dans l'onglet Avancé, activez le nom de domaine de deuxième niveau et définissez le nom de domaine de deuxième niveau correspondant

Comment dedecms configure le multisite Apache

Étape 4 : Configuration du nom de domaine de niveau 2, en prenant Western Digital comme exemple, la capture d'écran est la suivante :

Comment dedecms configure le multisite Apache

Après avoir entré, cliquez sur Ajoutez

Comment dedecms configure le multisite Apache

Par exemple, pour le répertoire heli que j'ai créé ci-dessus, il me suffit de lier le nom de domaine au répertoire heli. Autrement dit, cliquez sur Directory Select et recherchez le répertoire heli

Étape 5 : Modifiez le fichier programme dans la fonction /include/helpers/channelunit.helper.php, modifiez la ligne 73 : function GetFileUrl

if($moresite==1)
    {
	$articleUrl = preg_replace("/^".$sitepath.'/', '', $articleUrl);
    }
Copier après la connexion

Remplacez la barre oblique / par un point-virgule dans l'expression régulière du chemin et modifiez-la comme suit :

if($moresite==1)
{
	$articleUrl = preg_replace("'^".$sitepath."'",'',$articleUrl);
}
Copier après la connexion

Modifiez de même le programme autour de la ligne 260 :

if($GLOBALS['cfg_multi_site']=='Y')
{
    if($siteurl=='') {
    $siteurl = $GLOBALS['cfg_basehost'];
        }
    if($moresite==1 ) {
    $reurl = preg_replace("/^".$sitepath."/", '', $reurl);
Copier après la connexion

Modifiez la dernière phrase du code ci-dessus en :

$reurl  = preg_replace("'^".$sitepath."'",'', $reurl);
Copier après la connexion

Après cette modification, le chemin correct du fichier du nom de domaine de deuxième niveau peut être généré.

La dernière étape : étant donné que les chemins absolus seront activés après l'activation du multisite, il y aura des problèmes avec les chemins d'image à l'intérieur, vous devrez donc modifier le fichier. comme suit :

Rechercher

ligne 108 includedialogselect_images_post.php

$fileurl = $activepath.'/'.$filename;
Copier après la connexion

Remplacer par :

$fileurl = $cfg_cmsurl.$activepath.'/'.$filename;
Copier après la connexion

Modifier le fichier

dans le répertoire include et ajouter une méthode fonction extend.func.php

function replaceurl($newurl) { 
    $newurl=str_replace('src="/uploads/','src="'.{$GLOBALS['cfg_basehost']}.'/uploads/',$newurl); 
    return $newurl;
  }
Copier après la connexion
à la fin

De plus, appelez la balise

du contenu du corps de l'article et remplacez-la par : {dede:field.body/}{dede:field.body function='replaceurl(@me)'/}

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal