introduction
Drupal est un système de gestion de contenu (CMS) populaire utilisé pour exécuter certains des plus grands blogs et sites Web sur Internet. En raison de la stabilité de la base, de l'adaptabilité de la plate-forme et de sa communauté active, Drupal reste un choix populaire après plus d'une décennie sur la scène.
Dans ce guide, nous expliquerons comment installer Drupal sur un serveur Ubuntu 14.04. Nous utiliserons Apache pour desservir notre site, car il s’agit de la configuration recommandée par l’équipe de Drupal.
Conditions préalables
Avant de commencer avec ce guide, vous aurez besoin d’un serveur Ubuntu 14.04 avec une configuration de base complète. Suivez nosUbuntu 14.04 initial server setup guide pour configurer un utilisateur non root avec des privilèges sudo.
Apache, PHP et MySQL devront également être configurés sur votre serveur. Vous pouvez apprendre comment configurer cela en suivant notre guide surgetting LAMP installed on Ubuntu 14.04.
Une fois que vous avez rempli les conditions ci-dessus, continuez avec ce guide.
Avant de récupérer les fichiers Drupal et de les installer dans notre répertoire Web, nous devons préparer notre système. Bien qu'Apache, PHP et MySQL aient déjà été installés, nous devons apporter quelques modifications supplémentaires et apporter des modifications à chacun de ces éléments pour notre installation.
Configurer un utilisateur MySQL et une base de données pour Drupal
La première chose à faire est de configurer un utilisateur MySQL et une base de données pour l’utilisation de notre installation Drupal. Il est important de configurer un utilisateur et une base de données dédiés pour des raisons de sécurité.
Pour commencer, connectez-vous à MySQL:
mysql -u root -p
Le mot de passe de l'utilisateur racine MySQL que vous avez configuré lors de l'installation de ce logiciel vous sera demandé.
Une fois que vous vous êtes authentifié avec succès, vous serez déposé dans une invite MySQL. Tout d’abord, créez une base de données que votre installation Drupal pourra utiliser. Nous appellerons notre base de donnéesdrupal
par souci de simplicité:
CREATE DATABASE drupal;
Ensuite, vous devez créer un utilisateur que le logiciel Drupal peut utiliser pour se connecter à la base de données. Dans ce guide, nous appellerons notre utilisateurdrupaluser
. Sélectionnez un mot de passe fort pour remplacer celui du bloc ci-dessous:
CREATE USER drupaluser@localhost IDENTIFIED BY 'password';
Nous avons maintenant une base de données et un utilisateur, mais notre utilisateur n’a pas encore l’autorisation d’exécuter des actions sur la base de données. Nous pouvons résoudre ce problème en accordant des autorisations à l'utilisateur. Drupal a besoin de plusieurs autorisations pour fonctionner correctement. Vous trouverez ci-dessous une bonne sélection qui permettra au logiciel de fonctionner sans exposer inutilement notre base de données:
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER,CREATE TEMPORARY TABLES,LOCK TABLES ON drupal.* TO drupaluser@localhost;
Votre utilisateur a maintenant reçu l'autorisation d'administrer la base de données que nous avons créée. Pour mettre en œuvre ces modifications maintenant, nous devons vider les informations de privilège sur le disque:
FLUSH PRIVILEGES;
Maintenant, nous pouvons sortir de notre session interactive MySQL:
exit
Vous serez redirigé dans votre sessionbash
.
Installer des modules PHP et peaufiner la configuration
Nous installerons ensuite quelques modules PHP nécessaires à l’application Drupal. Heureusement, ils se trouvent dans les dépôts par défaut d’Ubuntu.
Mettez à jour votre cache de paquet local et installez-les en tapant:
sudo apt-get update
sudo apt-get install php5-gd php5-curl libssh2-php
Nous allons également apporter quelques petites modifications à votre fichier de configuration PHP. Celles-ci sont recommandées par les développeurs Drupal. Ouvrez le fichier de configuration Apache PHP avec les privilèges sudo dans votre éditeur de texte:
sudo nano /etc/php5/apache2/php.ini
Recherchez la directiveexpose_php
et la directiveallow_url_fopen
et réglez-les toutes les deux sur «Off»:
. . .
expose_php = Off
. . .
allow_url_fopen = Off
. . .
Enregistrez et fermez le fichier lorsque vous avez terminé.
Activer la réécriture des fonctionnalités et des fichiers Htaccess dans Apache
Ensuite, nous devrions regarder Apache. Premièrement, nous voulons activer la fonctionnalité de réécriture. Cela permettra à notre site Drupal de modifier les URL en chaînes conviviales.
Les modules réels d'Apachemod_rewrite
ont déjà installés par défaut. Cependant, il n'est pas activé. Nous pouvons basculer le commutateur pour activer ce module en tapant:
sudo a2enmod rewrite
Cela activera le module au prochain redémarrage d’Apache. Avant de redémarrer Apache, nous devons ajuster la configuration de notre hôte virtuel pour permettre l'utilisation d'un fichier.htaccess
. Ce fichier contiendra les règles de réécriture réelles et est inclus par défaut dans l'installation de Drupal.
Ouvrez le fichier virtualhost par défaut maintenant:
sudo nano /etc/apache2/sites-enabled/000-default.conf
Dans le bloc «VirtualHost», ajoutez un bloc de répertoire qui pointe vers notre racine Web. Dans ce bloc, définissez la directiveAllowOverride
sur «Tous». Vous pouvez également ajouter une directiveServerName
pour pointer vers votre nom de domaine et modifier la directiveServerAdmin
pour refléter une adresse e-mail valide:
. . .
ServerName example.com
ServerAdmin [email protected]
DocumentRoot /var/www/html
AllowOverride All
. . .
Enregistrez et fermez le fichier lorsque vous avez terminé.
Maintenant, il suffit de redémarrer le serveur Web pour implémenter nos modifications à Apache et PHP:
sudo service apache2 restart
Installer les fichiers Drupal
Maintenant que notre système est prêt, nous pouvons installer Drupal dans notre racine Web.
En fait, nous allons d'abord décompresser les fichiers dans notre répertoire personnel, puis les copier à l'emplacement approprié. Cela nous donnera un accès immédiat aux fichiers d'origine en cas de problème ou en cas de suppression accidentelle de fichiers par la suite.
Accédez auxDrupal download page et vérifiez la dernière version dans la section «Versions recommandées». Faites un clic droit sur le lientar.gz
de la version qui vous intéresse et choisissez «copier l'adresse du lien» ou toute autre option similaire que votre navigateur propose.
De retour sur votre serveur, accédez à votre répertoire personnel et utilisezwget
pour télécharger le fichier de projet en utilisant le lien que vous avez copié:
cd ~
wget http://ftp.drupal.org/files/projects/drupal-7.32.tar.gz
Votre lien aura probablement un numéro de version différent à la fin. Une fois le fichier téléchargé, extrayez le répertoire de l'application en tapant:
tar xzvf drupal*
Maintenant, déplacez-vous dans la structure de répertoires nouvellement extraite et utilisez l'utilitairersync
pour copier en toute sécurité tous les fichiers dans le répertoire racine Web de votre serveur. Nous utilisons le point dans cette commande pour spécifier le répertoire actuel. Ceci est nécessaire pour copier certains fichiers cachés dont nous avons besoin:
cd drupal*
sudo rsync -avz . /var/www/html
Vous avez maintenant la version originale des fichiers dans un répertoire de votre dossier de base au cas où vous auriez besoin de les référencer. Nous allons passer dans le répertoire racine Web pour personnaliser notre installation:
cd /var/www/html
Ajustement des fichiers Drupal pour plus de sécurité et de facilité d’installation
Le script d'installation basé sur le Web nécessite que nous apportions des modifications à notre répertoire Drupal afin de terminer le processus correctement. Nous devrions au préalable éliminer cela de manière à ne pas avoir à basculer entre le navigateur Web et la ligne de commande.
Tout d'abord, nous devons créer un nouveau répertoire sous le sous-arbresites/default
appeléfiles
:
mkdir /var/www/html/sites/default/files
Ensuite, nous devrions copier le fichier de paramètres par défaut dans le nom de fichier utilisé par Drupal pour la configuration active:
cp /var/www/html/sites/default/default.settings.php /var/www/html/sites/default/settings.php
Ce fichier de paramètres actif nécessite temporairement des autorisations supplémentaires lors de la procédure d'installation. Nous devons pour le moment accorder des autorisations d’écriture au propriétaire du groupe (nous attribuerons momentanément le propriétaire du groupe à l’utilisateur Web). Nous allons le supprimer une fois l'installation réussie:
chmod 664 /var/www/html/sites/default/settings.php
Ensuite, nous devons donner la propriété de groupe de nos fichiers à l'utilisateur Web, qui dans Ubuntu estwww-data
. Nous voulons donner à l'ensemble de l'installation Drupal ces propriétés de propriété:
sudo chown -R :www-data /var/www/html/*
Votre serveur est maintenant configuré de manière appropriée pour exécuter le script d'installation basé sur le Web.
Terminez la procédure d'installation basée sur le Web
Le reste de l'installation se fera dans votre navigateur Web. Ouvrez votre navigateur et accédez au nom de domaine ou à l’adresse IP de votre serveur:
http://server_domain_or_IP
Vous verrez la page initiale de la procédure d’installation de Drupal:
À moins que vous n'ayez une raison de ne pas le faire, sélectionnez l'installation «Standard» et cliquez sur «Enregistrer et continuer». Cliquez sur les boutons Continuer suivants jusqu'à la page de configuration de la base de données. Renseignez les informations que vous avez utilisées lors de la configuration de votre base de données et de votre utilisateur.
Pour ce guide, nous avons utilisé une base de données appeléedrupal
, un utilisateur de base de données nommédrupaluser
et un mot de passe depassword
. Vous devriez avoir sélectionné un mot de passe différent lors de la création de l'utilisateur. Cliquez à nouveau sur «Enregistrer et continuer» lorsque vous avez renseigné les détails de votre base de données:
Note: Lorsque vous cliquez sur «Enregistrer et continuer», il est possible que vous soyez redirigé vers la même page de configuration de la base de données. Si cela se produit, actualisez simplement la page. La base de données sera configurée et le profil sera installé.
Vous verrez une boîte d’informations en haut de la page vous indiquant qu’il est maintenant approprié de modifier les autorisations du fichier de paramètres. Nous allons le faire momentanément. Pour l'instant, vous devez configurer des informations de base sur votre site. Remplissez les champs en utilisant les valeurs appropriées pour votre site:
Cliquez sur le bouton «Enregistrer et continuer» une dernière fois pour terminer l'installation. Vous pouvez maintenant visiter votre site en allant sur votre nom de domaine:
Vous avez terminé l'installation de Drupal avec succès.
Cependant, nous devons toujours rétablir les autorisations pour notre fichier de paramètres afin que les utilisateurs non autorisés ne puissent pas apporter de modifications. Sur votre serveur, restreignez l'accès en écriture au fichier en tapant:
chmod 644 /var/www/html/sites/default/settings.php
Cela devrait bloquer d'autres modifications dans le fichier de paramètres.
Dépannage
Si la dernière étape de l’installation de Drupal ne s’achève pas, consultez vos journaux d’erreur:
sudo tail /var/log/apache2/error.log
Si vous voyez une erreur comme celle-ci:
[Wed Nov 12 13:40:10.566144 2014] [:error] [pid 7178] [client 108.29.37.206:55238] PHP Fatal error: Call to undefined function field_attach_load() in /var/www/html/includes/entity.inc on line 316, referer: http://12.34.56.78/install.php?profile=standard&locale=en
sh: 1: /usr/sbin/sendmail: not found
Cela indique que l'installation ne s'est pas terminée correctement. Il existe de nombreuses causes et corrections pour cette erreur documentée par Drupal:
Certains des correctifs les plus probables incluent la modification du fichier/etc/php5/apache2/php.ini
pour augmenter lesmax_execution_time
:
sudo nano /etc/php5/apache2/php.ini
Fichier:
max_execution_time = 300
Vous voudrez peut-être également essayer l'installation du navigateur dans un navigateur autre que Chrome, tel que Safari. Les paramètres de cookies du navigateur peuvent interférer avec l'installation.
Quoi qu'il en soit, une fois que vous avez implémenté votre correctif, vous devrez supprimer la base de données Drupal existante et le fichier/var/www/html/sites/default/settings.php
existant, les remplacer par des copies par défaut et recommencer l'installation. If you have any data or settings worth preserving, make backups.
Pour ce faire, vous pouvez vous connecter à MySQL et àDROP DATABASE drupal;
, puis suivre à nouveau la section de base de données précédente pour créer la base de données et lui accorder les privilèges.
Vous pouvez également exécuter à nouveaucp /var/www/html/sites/default/default.settings.php /var/www/html/sites/default/settings.php
pour remplacer le fichier de paramètres. Assurez-vous d'exécuter la commandechmod 664 /var/www/html/sites/default/settings.php
pour définir à nouveau les autorisations correctes.
Rendez-vous ensuite à votre adresse IP - éventuellement dans un autre navigateur - et tentez à nouveau l'installation finale.
Conclusion
Vous avez maintenant une base solide pour construire votre site Drupal. Drupal est incroyablement flexible, vous permettant de personnaliser l'apparence et les fonctionnalités du site en fonction de vos besoins et de ceux de vos utilisateurs.
Pour savoir où aller à partir d'ici, visitez notreDrupal tags page où vous pouvez trouver des tutoriels pour vous aider tout au long de votre chemin. Vous trouverez également une zone de questions et réponses pour obtenir de l'aide ou contribuer à la communauté.