Outils pour utilisateurs

Outils du site


informatique:linux:debian:lamp

LAMP, Linux Apache MySQL PHP

Certains disent que PHP peut être remplacé avec Python ou Perl.
.. et Apache par lighttpd !

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) :

# apt-get update && apt-get upgrade

mysql

Installez ensuite mysql en utilisant les commandes suivantes :

# apt-get install mysql-server mysql-client

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

Cette étape est inutile pour Lenny étant donné que lors de l'installation on vous demande de créer une mot de passe pour l'utilisateur root de MySQL.

# /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 :

# apt-get 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
       Require all granted
   </FilesMatch>
   <FilesMatch "\.phps$">
       SetHandler application/x-httpd-php-source
       Require all denied
   </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 :

# apt-get install php5 php5-mysql libapache2-mod-php5

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

# apt-get install perl libapache2-mod-perl2

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

# apt-get 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 :

# apt-get 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 :

informatique/linux/debian/lamp.txt · Dernière modification : 2022/04/10 17:44 de 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki