Projet

Général

Profil

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.

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>

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.

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