Ce sera une installation en local. Cela consiste à installer le serveur Lighttpd, le client et le serveur de base de données mysql, les dépendances s’il y en a (du moins celles qui sont obligatoires, mais pas les autres) et php ainsi que ses dépendances.
Voici un extrait du log de pacman après l’installation:
[2009-02-08 21:20] installed lighttpd (1.4.20-2)
[2009-02-08 21:20] installed php (5.2.8-1)
[2009-02-08 21:20] installed libmysqlclient (5.0.75-2)
[2009-02-08 21:20] installed mysql-clients (5.0.75-2)
[2009-02-08 21:20] installed mysql (5.0.75-4)
Le fichier de configuration que j’utilise pour avoir WordPress avec Lighttpd est (fichier rectifié après les erreurs corrigées “le jour suivant”) celui-ci : lighttpd.conf.
La suite prochaine session : configurer mysql, ajouter lighttp aux demons du fichier /etc/rc.conf et mysql.
Session suivante : je viens d’installer phpmyadmin, et ô merveille, il s’installe sans dépendance, et entre autres aucun paquet Apache (suivez mon regard ? 😀 )
Maintenant, tandis que je consulte cette documentation pour retrouver comment démarrer avec mysql, en local,
http://www.ac-creteil.fr/util/programmation/scripts/mysql-administration.php
je me dis qu’il y a bien un moyen simple, et je commence par démarrer le daemon mysql:
$ su
Mot de passe :
bash-3.2# /etc/rc.d/mysqld start
:: Adding mysql group [DONE]
:: Adding mysql user [DONE]
Installing MySQL system tables…
090210 15:32:15 [Warning] option ‘max_join_size’: unsigned value 18446744073709551615 adjusted to 4294967295
090210 15:32:15 [Warning] option ‘max_join_size’: unsigned value 18446744073709551615 adjusted to 4294967295
OK
Filling help tables…
090210 15:32:15 [Warning] option ‘max_join_size’: unsigned value 18446744073709551615 adjusted to 4294967295
090210 15:32:15 [Warning] option ‘max_join_size’: unsigned value 18446744073709551615 adjusted to 4294967295
OK
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/bin/mysqladmin -u root password ‘new-password’
/usr/bin/mysqladmin -u root -h trottinette password ‘new-password’
Alternatively you can run:
/usr/bin/mysql_secure_installation
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
See the manual for more instructions.
You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &
You can test the MySQL daemon with mysql-test-run.pl
cd mysql-test ; perl mysql-test-run.pl
Please report any problems with the /usr/bin/mysqlbug script!
The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at http://shop.mysql.com
:: Starting MySQL [DONE]
bash-3.2#
Alors un mot de passe pour l’administrateur mysql:
bash-3.2# mysqladmin -u root password <mot-de-passe>
Le mot de passe ne devrait pas traîner n’importe où. Il ne devra pas non plus être oublié. 🙂
Concernant phpmyadmin, tout comme pour la configuration par défaut du serveur Lighttpd, le répertoire par défaut serait /src : étant donné que je l’utilise de préférence sous /home, (avec le propriétaire “nobody.nobody”), je déménage phpMyAdmin sous /home/lighttpd et je réitère la commande “chown -R nobody.nobody lighttpd” en root, depuis le répertoire /home.
Le côté pratique dans le fait d’installer lighttpd sous /home sera évident lors de backups à faire sur les répertoires des utilisateurs.
Ensuite pour configurer phpMyAdmin, j’ai ajouté (selon le texte Documentation.txt trouvé à la racine du répertoire phpMyAdmin) le bloc de texte suivant dans le fichier config.sample.inc.php, que j’ai ensuite renommé en config.inc.php et installé sous la racine de phpMyAdmin:
/* From Documentation.txt : if you prefer to not be prompted every time you log in:
*/
$i=0;
$i++;
$cfg[‘Servers’][$i][‘user’] = ‘root’;
$cfg[‘Servers’][$i][‘password’] = ‘mon-mot-de-passe-root-mysql’; // use here your password
Un grand nombre de configurations sont possibles, elles sont décrites dans ce fichier de documentation.
Jour suivant…
oops ! Je me suis prise un «403 Forbidden !».
J’ai demandé une aide urgente, et voici les remèdes : dans le fichier lighttpd.conf sous /etc/lighttpd, il fallait décommenter “mod.cgi,” dans la partie “server.modules”, et dans le fichier php.ini sous /etc/php, il fallait aussi activer quelques extensions, en particulier la ligne “extention=mysql.so” et puis au cas où (cela dépend du mode de connexion à la base choisi, avec cookie, en http, ou config, et cela est expliqué dans le fichier documentation livré avec phpmyadmin), les extensions pdo_mysql.so, mysqli.so, mcrypt.so (pour utiliser cette dernière, destinée à la méthode d’authentification par cookie, il faut installer le paquet libmcrypt). En principe, l’extension session.so est déjà activée.
Les erreurs : dans le fichier /var/log/lighttpd/error.log on pouvait lire «WARNING: unknown config-key: cgi.assign (ignored)».
Une fois ce problème résolu par l’activation du mode cgi dans le lighttpd.conf, l’affichage du répertoire phpmyadmin montrait encore des erreurs, rectifiées cette fois par l’activation des extensions nécessaires.
Maintenant, phpMyAdmin est accessible par l’utilisateur root. La création d’un utilisateur moins privilégié est possible, quoique pas obligatoire une utilisation en local. Pour gérer les utilisateurs, il faut aller dans la section Accueil, onglet Privilèges de phpMyAdmin.
On peut y créer une ou plusieurs bases de données, au choix.
L’installation de WordPress : la version la plus récente vient encore de changer. Je vais donc télécharger la 2.7.1. Puis l’extraire dans mon home, modifier le fichier wp-config.example.php qui est à la racine du site pour en faire un wp-config.php et y mettre le nom de l’utilisateur, le mot de passe utilisateur, et le nom de la table. Il n’y aura plus qu’à changer le propriétaire pour nobody.nobody récursivement, et à transférer le tout sous le répertoire html, qui est chez moi le répertoire de la racine des sites.
Le readme me donnera la marche à suivre, le billet que j’ai écris précédemment sur la mise à jour de WordPress me rappellera les détails utiles pour la sécurisation du blog (si nécessaire), et je n’aurais plus qu’à afficher le fichier d’installation dans mon navigateur.