
Eustace Evans
0
3084
40
Alors, vous souhaitez héberger plusieurs blogs WordPress sur un seul serveur? Avec la fonctionnalité Apache2 VirtualHost, on peut facilement exécuter plusieurs sites Web sur un seul serveur, et ce bref tutoriel va vous montrer comment y parvenir.
Chaque hôte virtuel fonctionne indépendamment des autres. Donc, si vous allez exécuter un site Web WordPress sur chaque VirtualHost, il fonctionnera comme s'il s'agissait du seul site Web sur le serveur. Cela vous permet de réduire les coûts sur les serveurs et les ressources supplémentaires.
Ce tutoriel sera court… et ne vous fera pas perdre de temps avec d’autres choses inutiles.
Étape 1: configuration du serveur Ubuntu
Je trouve Ubuntu facile à gérer et à maintenir, donc ce tutoriel va être basé sur Ubuntu Linux. Vous pouvez faire fonctionner Apache2 VirtualHost sur d'autres distributions Linux, mais Ubuntu est une excellente distribution pour les nouveaux utilisateurs et les débutants.
Alors, installez Ubuntu avec un accès root et exécutez les commandes ci-dessous pour le mettre à jour.
sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get autoremove
Étape 2: installer le serveur Web Apache2
Après la mise à jour d'Ubuntu, exécutez les commandes ci-dessous pour installer le serveur Web Apache2.
sudo apt-get installer apache2
Étape 3: installer le serveur de base de données MySQL
Après avoir installé Apache2, exécutez les commandes ci-dessous pour installer le serveur de base de données MySQL.
sudo apt-get install serveur-mysql client-mysql
Lors de l'installation, vous serez invité à créer un nouveau mot de passe pour l'utilisateur root MySQL. Fais le! Ce mot de passe sera utilisé pour se connecter au serveur MySQL.
Étape 4: Installez PHP et d'autres modules
Après avoir installé le serveur MySQL, exécutez les commandes ci-dessous pour installer PHP et d'autres modules PHP.sudo apt-get install php libapache2-mod-php php-mysql php-curl php-gd php-pear php-imagick php-imap php-mcrypt php-recode php-tidy php-xmlrpc
À ce stade, tous les serveurs et packages dont WordPress a besoin pour fonctionner sont installés. Les prochaines étapes seront de créer des bases de données WordPress, de configurer Apache2 VirtualHosts et de télécharger du contenu WordPress en ligne.
Étape 5: Créez des bases de données et des utilisateurs WordPress
Exécutez les commandes ci-dessous pour vous connecter au serveur MySQL
sudo mysql -u racine -p
WordPress nécessite une base de données. Exécutez les commandes ci-dessous pour créer de nouvelles bases de données ainsi que des utilisateurs de base de données. Il suffit de dupliquer les commandes pour des bases de données supplémentaires et des utilisateurs autant que vous le souhaitez. Assurez-vous qu'ils ont tous des noms uniques.
Les commandes ci-dessous créent une nouvelle base de données appelée wpdatabase
CREATE DATABASE wpdatabase;
Les commandes ci-dessous créent un nouvel utilisateur de base de données appelé wpuser et accordent à l'utilisateur l'accès à wpdatabase.
GRANT ALL ON wpdatabase. * TO 'wpuser' @ 'localhost' IDENTIFIED BY 'type_new_password_here';
[alert-note] Répétez les étapes ci-dessus pour créer des bases de données supplémentaires pour des sites WordPress supplémentaires. Par exemple, créez la base de données wpdatabase1, wpdatabase2 ainsi que les utilisateurs des sites Web WordPress supplémentaires. [/ Alert-note]
Lorsque vous avez terminé, exécutez les commandes ci-dessous pour enregistrer vos modifications et quitter.
PRIVILÈGES DE RINÇAGE; sortie
Étape 6: Créez plusieurs VirtualHost pour plusieurs sites
Après avoir créé plusieurs bases de données pour les multiples sites WordPress que vous souhaitez exécuter, suivez le guide ci-dessous pour créer plusieurs VirtualHosts pour les sites. Copiez le fichier de configuration de site Apache2 par défaut pour créer des VirtualHosts supplémentaires (sites).
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf sudo cp /etc/apache2/sites-available/000-default.conf / etc / apache2 /sites-available/example.net.conf
Vous voyez que nous créons deux hôtes virtuels pour deux sites Web différents… (example.com.conf et example.net.conf)
Chacun des fichiers de configuration de site ci-dessus hébergera un domaine unique.
Ouvrez maintenant chaque fichier en exécutant les commandes ci-dessous pour chacun…
sudo nano /etc/apache2/sites-available/example.com.conf
Ensuite, pour le fichier example.com.conf, configurez le nom du serveur, alias de serveur, DocumentRoot et d'autres uniques au domaine example.com. Répétez la même chose pour les autres hôtes virtuels.
# Cependant, vous devez le définir explicitement pour tout autre hôte virtuel. ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/html/example.com # Niveaux de journalisation disponibles: trace8,…, trace1, debug, info, notice, warn, # error, crit, alerte, émerg. # Il est également possible de configurer le niveau de journalisation pour des modules # particuliers, par ex. #LogLevel info ssl: warn ErrorLog $ APACHE_LOG_DIR /error.log CustomLog $ APACHE_LOG_DIR /access.log combiné # Pour la plupart des fichiers de configuration de conf-available /, qui sont # activés ou désactivés au niveau global, c'est possible pour # inclure une ligne pour un seul hôte virtuel particulier. Par exemple, la ligne suivante # active la configuration CGI pour cet hôte # seulement après avoir été globalement désactivée avec "a2disconf". #Include conf-available / serve-cgi-bin.conf # vim: syntaxe = apache ts = 4 sw = 4 sts = 4 sr noet
Faites ce qui précède pour tous les sites que vous souhaitez héberger… chacun avec une identité unique, y compris DocumentRoot, ServerName, ServerAlias et Domain
Lorsque vous avez terminé. enregistrez vos modifications et fermez.
Ensuite, activez les sites que vous venez de créer en exécutant les commandes ci-dessous pour chacun des hôtes virtuels.
sudo a2ensite example.com.conf sudo a2ensite example.net.conf
Activez également d'autres modules
sudo a2enmod en-têtes sudo a2enmod réécrire sudo a2enmod env sudo a2enmod dir sudo a2enmod mime
Maintenant, passez à l'étape suivante.
Étape 7: Créez chaque répertoire pour les sites
Maintenant que vous avez configuré les multiples sites dans Apache2, allez et créez les dossiers DocumentRoot pour chacun des sites que vous avez définis dans la configuration ci-dessus… La ligne que lit DocumentRoot doit correspondre à chaque emplacement.
sudo mkdir -p /var/www/html/example.com sudo mkdir -p /var/www/html/example.net
Configurer les autorisations de dossier appropriées pour tous les sites
sudo chown -R www-data: www-data / var / www / html sudo chmod -R 755 / var / www / html
Redémarrez le serveur Web Apache2 en exécutant les commandes ci-dessous
sudo systemctl redémarrer apache2
À ce stade, tous vos sites devraient déjà être destinés au contenu WordPress. Ensuite, téléchargez le contenu WordPress et extrayez-le dans le DocumentRoot dossier pour chaque site.
Étape 8: Téléchargez le contenu WordPress
Téléchargez maintenant le contenu WordPress et extrayez-le dans le répertoire racine de chaque site.
cd / tmp / && wget http://wordpress.org/latest.tar.gz
Puis extrayez le fichier téléchargé.
tar -xzvf latest.tar.gz
Et copiez dans chaque dossier racine de chaque site.
sudo cp -R wordpress / * /var/www/html/example.com sudo cp -R wordpress / * /var/www/html/example.net
Étape 9: Configurer les paramètres de la base de données WordPress
Exécutez les commandes ci-dessous pour créer WordPress wp-config.php fichier de paramètres de son exemple.
sudo cp /var/www/html/example.com/wp-config-sample.php /var/www/html/example.com/wp-config.php sudo cp /var/www/html/example.net/wp -config-sample.php /var/www/html/example.net/wp-config.php
Puis ouvrez wp-config.php et apportez les modifications suivantes en surbrillance pour référencer la base de données et l'utilisateur que vous avez créés ci-dessus.
sudo nano /var/www/html/example.com/wp-config.php
Lorsque le fichier s'ouvre, effectuez les modifications et enregistrez.
// ** Paramètres MySQL - Vous pouvez obtenir ces informations auprès de votre hébergeur ** // / ** Le nom de la base de données pour WordPress * / define ('DB_NAME', 'wpdatabase'); / ** Nom d'utilisateur de la base de données MySQL * / define ('DB_USER', 'wpuser'); / ** Mot de passe de la base de données MySQL * / define ('DB_PASSWORD', 'type_password_here'); / ** Nom d'hôte MySQL * / define ('DB_HOST', 'localhost'); / ** Jeu de caractères de base de données à utiliser pour créer des tables de base de données. * / define ('DB_CHARSET', 'utf8'); / ** Le type d'assemblage de base de données. Ne changez pas cela en cas de doute. * / define ('DB_COLLATE', ");
Effectuez les opérations ci-dessus pour chacun des sites que vous créez, en vous assurant que les informations de connexion à la base de données sont correctes pour chaque site.
sudo systemctl recharger apache2
Maintenant, ouvrez votre navigateur Web et accédez aux domaines du serveur et vous devriez voir la page de configuration par défaut de WordPress pour chaque site.

Prendre plaisir!