{{important(Vous devez être à l'aise avec les notions expliquées ici avant de lire ce document)}}
Les commandes seront données pour Fedora. Adaptez à votre distribution.
- Contenu
- Modifier le host
- Préparer Apache
- Préparer mysql
- Settings.php
- sites.php
- Permissions
- Le script
- Sources externes
Modifier le host¶
Les sites sont hébergés sur le sous-domaine assos.local. Ajoutez donc la ligne 127.0.0.1 assos.local
à /etc/hosts.
Préparer Apache¶
Dans toute la suite DIR_ASSOS sera à remplacer par le chemin vers le dossiers contenant l'installation Drupal.
Activer les userdirs¶
Par défaut, Apache ne peux pas aller dans les dossiers utilisateurs. Il faut les activer. Cela se passe dans le fichier de configuration principal de Apache. Ouvrez /etc/http/conf.d/userdir.conf
et remplacez UserDir disabled
par UserDir enabled
.
Créer le bon vhost¶
Apache 2.2¶
<code class="xml">
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerAlias fedora
<Directory DIR_ASSOS>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
</VirtualHost>
</code>
Apache 2.4¶
La configuration d'Apache 2.4 est légèrement différente de celle de la version 2.2.
<code class="xml">
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName assos.local
ServerAlias assos.local
DocumentRoot DIR_ASSOS
<Directory DIR_ASSOS>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
</VirtualHost>
</code>
{{tip(Pensez à relancer Apache après ces modifications)}}
Préparer mysql¶
Par défaut, mysql n'autorise pas les requêtes trop importantes ce qui peut conduire à l'erreur MySQL server has gone away côté Drupal. Ajouter ou modifier max_allowed_packet=16M
à votre /etc/my.cnf
Settings.php¶
Mettre les bonnes valeurs dans settings.local.php.
sites.php¶
Remplacer assos.centrale-marseille.fr par assos.local sur la ligne du site choisi.
Permissions¶
Vérifier que le serveur Apache a les bonnes permissions, ie qu'il peut accéder au dossier sans problème. Faîtes des chmod 711
sur les dossiers qu'il doit traverser, chmod -R u=rwX,go=rwX DOSSIER_DU_SITE
.
Si vous utilisez SELinux, pensez à le désactiver avec sudo setenforce 0
ou à modifier le contexte du dossier drupal avec sudo chcon -t httpd_sys_content_t public_html
.
{{important(Les permissions des dossiers et fichiers sont trop permissives mais évitent les erreurs. À améliorer.)}}
Le script¶
Il existe un script qui synchronise et fait ces opérations pour vous : source:other-scripts/d7-sync.sh.
Sources externes¶
Mis à jour par Julien Enselme il y a plus de 9 ans · 9 révisions