Installer un serveur Apache avec PHP sous Linux

Apache est un serveur HTTP open source utilisé pour hébergé des pages web (html, php, etc.). Il est le serveur web le plus populaire depuis 1996 et plus de 50% des sites Internet du monde tournent avec Apache (barre des 100 000 000 de sites dépassée en 2009).

PHP est un langage de programmation largement utilisé dans le développement Web.

L'objectif de cette note est donc d'installer un serveur Apache ainsi que PHP pas à pas à partir des sources officielles, puis de configurer notre serveur Apache pour interpréter les pages PHP.

Logiciels utilisés : Apache 2.2.17 et PHP 5.3.4

Système d'exploitation : Debian  5.0, Linux 2.6.34

Mis à jour le 03/09/2010 : upgrade des versions Apache et PHP et améliorations diverses

Continuer la lecture de « Installer un serveur Apache avec PHP sous Linux »

Ajouter de la couleur à VIM

Pour ajouter la coloration syntaxique à l'éditeur de texte VIM (Vi iMproved), c'est très simple, il suffit de taper cette commande dans vim :

:syntax on

Différents thèmes de couleurs sont disponibles par défaut, on peut les choisir en tapant colorscheme puis la touche TAB pour faire défiler les différents thèmes disponibles. Par exemple :

:colorscheme delek

D'autre thèmes sont disponibles sur le Net, il suffit de les télécharger et de les placer dans /usr/share/vim/vimcurrent/colors/.

Pour que la coloration syntaxique et le thème choisi soit permanent il suffit de rajouter ces mêmes commandes dans le fichier ~/.vimrc de l'utilisateur (le créer s'il n'existe pas) :

$ vim ~/.vimrc

:syntax on
:colorscheme delek

Installer un serveur MySQL sous Linux

MySQL est un SGBDR (Système de Gestion de Base de Données Relationnelles). Il est disponible en version open source (utilisée ici) et commerciale. Concurrent direct d'Oracle ou de Microsoft SQL Server, il est très utilisé pour des applications Web, notamment en association avec les serveurs Web Apache & Tomcat ainsi que les langages PHP & Java.

Objectif : installer un serveur MySQL pas à pas à partir des sources officielles.

Logiciel utilisé : MySQL 5.1.44

Système d'exploitation : Debian 5.0, Linux 2.6.32

Note : les méthodes d'installations ayant évolué à partir de MySQL 5.5, pour l'installation de MySQL 5.5 se référer plutôt à l'article suivant : http://blog.moncoindunet.fr/linux/installer-un-serveur-mysql-5-5-sur-linux/

Continuer la lecture de « Installer un serveur MySQL sous Linux »

PHP, GD et JPEG …

Voici une petite histoire qui peut arriver à n'importe qui (sisi !) : un jour, vous compilez PHP avec le support GD, sans autre option. Puis, plus tard, vous avez besoin du support JPEG pour GD. Vous retournez donc fièrement voir vos sources et recompilez joyeusement PHP avec GD et le support JPEG … et là : PAF ! Pas d'erreurs à la compilation, tout se passe bien, sauf que votre phpinfo() persiste à vous dire que, bah non, le support JPEG n'est pas activé !

Voici donc la marche à suivre pour que votre phpinfo() vous donne raison :

  • déjà, on installe le paquet libjpeg62-dev, indispensable pour la compilation de PHP :

$ apt-get install libjpeg62-dev

  • ensuite, on s'assure qu'il existe un fichier libjpeg.so quelque part et on note le nom de son répertoire (ici, /usr/lib) :

$ find / -name "libjpeg.so"
/usr/lib/libjpeg.so

  • s'il n'existe pas, il faut chercher un fichier libjpeg.so.62.0.0 puis créer un lien symbolique :

$ find / -name "libjpeg.so.62.0.0"
/usr/lib/libjpeg.so.62.0.0
$ ln -s /usr/lib/libjpeg.so.62.0.0 /usr/lib/libjpeg.so

  • puis; dans le répertoire des sources de PHP, on purge les compilations précédentes :

$ cd /usr/local/src/php-5.2.13
$ make clean

  • on peut maintenant recompiler avec les bonnes options, dont l'emplacement du fichier libjpeg.so :

$ ./configure <les options de compilation précédentes> --with-gd --with-jpeg-dir=/usr/lib
$ make
$ make install

  • et voilà ! Le support JPEG pour GD est maintenant activé et fonctionnel. Ce peut être vérifié en créant un fichier phpinfo.php avec ce contenu :
<?php
phpinfo();
?>
  • on s'aperçoit alors que, dans la section GD, apparait bien la ligne : JPG Support enabled

Sauvegarde et restauration d’une base de données MySQL

Sauvegarde (dump) de la base de données avec compression du fichier de sortie :

$ cd /usr/local/mysql/bin
$ mysqldump -u root -p --database <nom de la base> --add-drop-database | gzip -c9 > /tmp/dump_<nom de la base>.gz

Restauration de la base de données (sur la même machine, ou pas) :

$ cd /tmp
$ gzip -d dump_<nom de la base>.gz
$ cd /usr/local/mysql/bin
$ mysql -u root -p < dump_<nom de la base>

Installer un serveur DNS BIND sous Linux

BIND (Berkely Internet Name Domain) est un serveur DNS open source utilisé pour la résolution de noms Internet.

Objectif : installer un serveur BIND pas à pas à partir des sources officielles afin de s'en servir pour porter une zone Internet (serveur autoritaire) ou pour effectuer du cache DNS (serveur cache seulement).

Logiciel utilisé : BIND 9.7.2-P3

Système d'exploitation : Debian 5.0, Linux 2.6.34

Continuer la lecture de « Installer un serveur DNS BIND sous Linux »

Passer en locale UTF-8 sous Debian

Le but de cette note est de modifier le jeu de caractères par défaut sous Debian pour passer en UTF-8.

L'avantage de l'UTF-8 est qu'il permet la représentation d'un nombre beaucoup plus important de caractères : 90 000 aujourd'hui, contre 256 pour l'ISO-8859-1 (ou ISO-latin1) utilisé par défaut.

La manipulation pour changer le jeu de caractères par défaut est très simple et passe par la commande dpkg-reconfigure. Cette commande permet de reconfigurer un paquet après qu'il soit installé. Ici, nous allons reconfigurer le paquet locales :

~$dpkg-reconfigure locales

Dans la liste déroulante, vérifier que le jeu de caractères fr_FR.UTF-8 UTF-8 est coché :

[ ] fr_CA ISO-8859-1
[ ] fr_CA.UTF-8 UTF-8
[ ] fr_CH ISO-8859-1
[ ] fr_CH.UTF-8 UTF-8
[*] fr_FR ISO-8859-1
[*] fr_FR.UTF-8 UTF-8
[*] fr_FR.UTF-8@euro UTF-8
[*] fr_FR@euro ISO-8859-15
[ ] fr_LU ISO-8859-1
[ ] fr_LU.UTF-8 UTF-8
[ ] fr_LU@euro ISO-8859-15

Après avoir validé, on peut choisir le jeu de caractère par défaut. Sélectionner fr_FR.UTF-8 :

Aucun
fr_FR
fr_FR.UTF-8
fr_FR.UTF-8@euro
fr_FR@euro

Après validation, il faut se déconnecter et reconnecter. On peut alors vérifier le jeu de caractères par défaut qui est maintenant UTF-8 avec la commande locale :

~$locale
LANG=fr_FR.UTF-8
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL=

OpenSSH : connexion par clé

OpenSSH est un serveur SSH open source utilisé pour se connecter à distance et de manière sécurisée à une machine.

Objectif : se connecter à un serveur OpenSSH à l'aide d'une paire de clés plutôt que qu'avec un simple mot de passe.

Logiciel utilisé : OpenSSH 5.3P1

Système d'exploitation : Debian 5.0, Linux 2.6.26

Continuer la lecture de « OpenSSH : connexion par clé »

Changer l’éditeur par défaut sur Debian

Si comme moi vous êtes un inconditionnel de vi* vous vous êtes aperçu que ce n'est pas l'éditeur par défaut sur Debian ! C'est l'éditeur nano qui est chargé, par exemple quand vous voulez éditer le fichier de configuration sudo ou éditer un crontab avec les commandes adéquats.

Il ne tiens qu'à vous d'en changer ! La manip est très simple, elle passe par l'utilitaire update-alternatives :

~$ update-alternatives --config editor

There are 4 alternatives which provide `editor'.
  Selection    Alternative
-----------------------------------------------
          1    /bin/ed
*+        2    /bin/nano
          3    /usr/bin/vim.tiny
          4    /usr/bin/vim.basic
Press enter to keep the default[*], or type selection number: 4
Using '/usr/bin/vim.basic' to provide 'editor'.

Ouf, sauvé ! 🙂

Techniquement, l'utilitaire met à jour un lien symbolique pour pointer sur l'éditeur désiré.

Avant :

~$ ls -l /usr/bin/editor
lrwxrwxrwx 1 root root 24 Dec 27 23:43 /usr/bin/editor -> /etc/alternatives/editor
~$ ls -l /etc/alternatives/editor
lrwxrwxrwx 1 root root 9 Dec 27 23:43 /etc/alternatives/editor -> /bin/nano

Après :

~$ ls -l /usr/bin/editor
lrwxrwxrwx 1 root root 24 Dec 27 23:43 /usr/bin/editor -> /etc/alternatives/editor
~$ ls -l /etc/alternatives/editor
lrwxrwxrwx 1 root root 18 Dec 29 14:03 /etc/alternatives/editor -> /usr/bin/vim.basic

Configurer et sécuriser un serveur OpenSSH

OpenSSH est un serveur SSH open source utilisé pour se connecter à distance et de manière sécurisée à une machine.

Objectif : configurer un serveur OpenSSH afin, entre autres, d'en augmenter la sécurité

Logiciel utilisé : OpenSSH 5.3P1

Système d'exploitation : Debian 5.0, Linux 2.6.26

Continuer la lecture de « Configurer et sécuriser un serveur OpenSSH »