Traduction(s) : English - Français - Italiano - ?简体中文


LAMP, Linux Apache MySQL PHP

Installation

Avant de commencer, pensez à vérifier que votre distribution est à jour (le caractère '#' indique que vous devez exécuter les commande en tant que superutilisatuer) :

 # aptitude update && aptitude upgrade

mysql

Installez ensuite mysql en utilisant les commandes suivantes :

 # aptitude install mysql-server mysql-client

Immédiatement après l'installation du serveur MySQL, vous devez changer le mot de passe root :

 # /usr/bin/mysqladmin -u root password 'votre-nouveau-mot-de-passe'

Vous ne devriez jamais utiliser votre compte root pour travailler avec vos bases de données. Le compte root est un compte avec tous les droits, qui ne devrait être utilisé que pour réaliser des opérations d'administration. Vous devrez créer un utilisateur pour accéder à votre base de donnée depuis vos scripts PHP. Vous pouvez vous aider de panneaux d'administration comme phpMyAdmin pour créer un utilisateur ou gérer ses droits sur une base de données facilement.

apache2

Installez le serveur web comme ceci :

 # aptitude install apache2 apache2-doc

Configuration des dossiers utilisateurs du serveur web Apache

Activez le module :

# a2enmod userdir

Configurez maintenant le module Apache dans le fichier /etc/apache2/mods-enabled/userdir.conf comme suit :

<IfModule mod_userdir.c>
        UserDir public_html
        UserDir disabled root

        <Directory /home/*/public_html>
                AllowOverride All
                Options MultiViews Indexes SymLinksIfOwnerMatch
                <Limit GET POST OPTIONS>
                        Order allow,deny
                        Allow from all
                </Limit>
                <LimitExcept GET POST OPTIONS>
                        Order deny,allow
                        Deny from all
                </LimitExcept>
        </Directory>
</IfModule>

Créez un dossier en tant qu'utilisateur (pas comme root) :

$mkdir /home/$USER/public_html

En tant que root, changez le groupe du dossier et redémarrez le serveur :

# chgrp www-data /home/<username>/public_html
# service apache2 restart

Si vous avez une erreur 403 "Forbidden" quand vous essayez d'accéder vos pages personnelles, vérifiez que les permissions de /home/username sont configurées ainsi drwxr-xr-x. Le cas échéant, corrigez-les :

# chmod 755 /home/<username>

Pour pouvoir se servir de PHP, vérifiez que le module est bien configuré dans le fichier /etc/apache2/mods-available/php5.conf :

<IfModule mod_php5.c>
    <FilesMatch "\.ph(p3?|tml)$">
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch "\.phps$">
        SetHandler application/x-httpd-php-source
    </FilesMatch>
    # To re-enable php in user directories comment the following lines
    # (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
    # prevents .htaccess files from disabling it.
    #<IfModule mod_userdir.c>
    #    <Directory /home/*/public_html>
    #        php_admin_value engine Off
    #    </Directory>
    #</IfModule>
</IfModule>

Mettez du contenu web dans ~/public_html et allez voir ce qui se passe à l'adresse http://localhost/~username

Le "P" de LaMp : PHP (ou encore Perl ou même Python)

Installer PHP comme partie d'une LAMP avec Debian est assez simple, en tant que root installez les paquets suivants :

 # aptitude install php5 php5-mysql libapache2-mod-php5

Si vous préférez Perl, alors tapez plutôt :

 # aptitude install perl libapache2-mod-perl2

Enfin, si vous jetez votre dévolu sur Python :

 # aptitude install python libapache2-mod-python

Configuration

Le fichier de configuration d'Apache2 : /etc/apache2/apache2.conf

Vous pouvez toujours éditer ce fichier, mais pour les applications les plus simples, ceci ne devrait pas être nécessaire étant donné que conf.d paramètre désormais la plupart des choses.

Testons PHP

Pour tester l'interface PHP, modifiez le fichiez /var/www/apache2-default/test.php :

 # nano /var/www/apache2-default/test.php

et ajoutez-y la ligne suivante :

<?php phpinfo(); ?>

Après ceci, faites un tour sur http://<SERVERIP>/apache2-default/test.php avec votre navigateur préféré pour commencer à vous en servir.

phpMyAdmin

phpMyAdmin vous simplifiera l'administration de votre base de données mysql grâce à son interface graphique :

 # aptitude install phpmyadmin

Pour accéder à phpMyAdmin, vous devez juste insérer la ligne suivante dans le fichier /etc/apache2/apache2.conf (inutile depuis Squeeze, à l'installation du paquet, les liens sont créés automatiquement /etc/apache2/conf.d/phpmyadmin.conf -> ../../phpmyadmin/apache.conf) :

Include /etc/phpmyadmin/apache.conf

Redémarrez Apache :

 # /etc/init.d/apache2 restart

Pour l'utiliser rendez-vous à l'adresse http://<SERVERIP>/phpmyadmin/. Utilisez l'IP ou le nom de votre PC/serveur à la place de SERVERIP. L'IP de localhost est toujours 127.0.0.1.

PHP: /etc/php5/apache2/php.ini

Il arrive souvent que l'on doive activer MySQL dans PHP. Pour ce faire, éditez php.ini en décommentant la ligne suivante (cherchez l'occurence mysql).

extension=mysql.so

Notez que ceci ne devrait plus être requis tant que l'on utilise conf.d

MySQL : /etc/mysql/my.cnf

Vous trouverez des exemples de configuration ici : /usr/share/doc/mysql-server/examples

Voir aussi :

Cette page est inspirée de http://linux.justinhartman.com/Setting_up_a_LAMP_Server.

Sur le site de la communauté française d'Ubuntu [http://doc.ubuntu-fr.org/lamp http://doc.ubuntu-fr.org/lamp]

Sur le wiki debian-facile.org [http://wiki.debian-facile.org/config:apache]


CategorySystemAdministration


ToDo: Nettoyer un peu la page