Installation WordPress sur Apache sur Debian
En guise de premier article, un how-to de circonstance : tout frais avant que j’aie oublié. Et un avertissement pour inaugurer le tag « how-to » : il ne faut pas le lire « comment faire », mais plutôt « comment j’ai fait »…
Tout d’abord, j’ai lancé un petit aptitude install wordpress
et commencé à
regarder ce qui se trouvait dans /u/s/d/wordpress
. Il y avait un README
et
des exemples de configuration Apache et de script pour aider à créer une base
mysql et permettre à wordpress d’y accéder.
J’ai d’abord été surpris de constater que le script échouait, tout simplement
parce que je n’avais pas de serveur mysql qui tournait. Enquête faite,
mysql-server est simplement suggéré par wordpress et pas installé d’office, car
on pourrait en principe utiliser une bdd
distante. Soit, j’installe mysql-server-5.0
et tout marche.
Mais après quelques minutes à configurer la chose, je change d’avis et me met à
penser que c’est mieux d’installer wordpress à la main dans mon home : je trouve
lourd d’avoir à être root pour installer des thèmes par exemple. Donc on efface
tout et on recommence, sauf qu’avant de désinstaller on dit aptitude
unmarkauto
avec la liste des dépendances de wordpress histoire de les garder
sous le coude.
Bref, je suis donc parti du site http://fr.wordpress.org/, j’ai téléchargé
l’archive et l’ai dézippée dans ~/www/weblog
. J’ai alors suivi les
instructions en bas de page et plus spécifiquement celles présentes
ici pour la création et
configuration de la bdd. Tout a bien marché.
Par contre, en testant, j’ai une mauvaise surprise, provenant des exemples de
.htaccess
préalablement recopiés : il semblerait que la directive ErrorLog
,
qui ne provoquait pas d’erreur à la relecture de la configuration, faisait par
contre tout bonnement mourir le serveur (dans des souffrances atroces,
j’imagine) quand on tentait d’accéder à la page. J’ai abandonné l’idée
d’utiliser cette fonctionnalité pour le moment.
L’autre petit souci est survenu quand j’ai voulu configurer des jolis
permaliens : d’une part il faut penser à mettre le code aimablement fournit
par wordpress dans une directive <Directory>
comme nous l’apprend le message
d’erreur. D’autre part, c’est stupide mais il faut y penser : il faut activer
mod_rewrite
:-)
Pour finir, deux mots sur la configuration d’Apache. Comme souvent chez Debian,
c’est un peu sophistiqué mais assez bien fait : pour les sites comme pour les
modules, il y a un répertoire *-available
et un *-enabled
et on active les
trucs en faisant des liens symboliques du deuxième vers le premier. J’en profite
d’ailleurs pour place dans le home de mon utilisateur les fichiers de
configuration propres à chacun des serveurs virtuels, et lui donne le droit
grâce à sudo de demander à Apache de relire ses fichiers de configuration.
Je trouve ça plus pratique que de lister les sites virtuels dans le fichier de
conf principal d’Apache puis d’utiliser des .haccess
. D’une part, au moment du
reload
on a les messages d’erreur si les directives ne sont pas correctes,
d’autre part, ça fait toujours un fichier de moins à analyser chaque requête
pour Apache.
Bref, mon ~/www/weblog.conf
Kimarch® est le suivant :
<VirtualHost *:*>
ServerName weblog.elzevir.fr
DocumentRoot /home/mpg/www/weblog
<Directory />
Options FollowSymLinks
AllowOverride All
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
</Directory>
</VirtualHost>
Je crois n’avoir rien oublié, tout a l’air de marcher pour le moment.