Fedora-Fr - Communauté francophone Fedora - Linux

Portail de Fedora-Fr : la communauté francophone autour de la distribution Linux Fedora

Muffin 2/Fedora LAMP

De Magazine fedora-fr.
Aller à : Navigation, rechercher
Article en cours de rédaction !
InProgress tip.png
Le présent article est actuellement en cours de rédaction.
Adressez-vous à la personne en charge pour toute proposition ou modification.
Auteur / Éditeur : [[Utilisateur:{{{1}}}|{{{1}}}]]
Par : MathieuSchires
Article en cours de relecture !
InProgress tip.png
Le présent article est actuellement en cours de relecture.
Adressez-vous à la personne en charge pour toute proposition ou modification.
Relecteur / Validateur : FabienArchambault

Lamp logo.png

Sommaire

Introduction

LAMP est un acronyme désignant un ensemble de logiciels libres permettant de construire des serveurs de sites Web. L'acronyme original se réfère aux logiciels suivants :

  • Linux, le système d'exploitation
  • Apache, le serveur Web
  • MySQL, le serveur de base de données
  • PHP, le langage de script

Grâce à cette combinaison, nous bénéficions d'une architecture pour le développement d'applications web.

Installation d'Apache

Le but n'est pas de présenter le très célèbre serveur Web Apache [1] mais de vous indiquer comment l'installer rapidement.

Vous pouvez retrouver le détail de sa configuration sur la documentation en ligne écrite par Remi Collet Installation et configuration d'Apache [2].

Pour commencer...

 $ su -c 'yum install httpd-manual'

Votre serveur Web préféré et maintenant installé. Passons à l'installation de MySQL...

Installation de MYSQL

Lancer la commande :

$ su -c 'yum install mysql-server'

Une fois que l'installation est terminée, il faut démarré le service Mysql avec :

$ su -c '/etc/init.d/mysqld start' 

Normalement, la terminal indique que le démarrage est OK.

Démarrage de MySQL :                                       [  OK  ]

Nous allons maintenant configurer les bases de données de manière sécurisée. Dans le cas contraire, les bases seraient accessibles en tant que 'root' sans mot de passe.

$ mysql_secure_installation

Maintenant, passons à la configuration :

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
     SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
In order to log into MySQL to secure it, we'll need the current
password for the root user.  If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none) :

Pour les personnes les moins à l'aise en anglais, vous devez saisir votre mot de passe pour l'utilisateur 'root', ici le mot de passe n'a pas été encore défini. Veuillez appuyer sur la touche "entrée".

Change the root password? [Y/n]

Répondez 'Y' à la question.

Remove anonymous users

Ensuite répondez 'Y' à la question.

Disallow root login remotely ?

puis 'n' à la question.

Remove test database and access to it ?

Ensuite, vous pouvez répondre 'Y', cela supprimera la base de test.

Reload privilege tables now ?

Pour terminer, répondez 'Y' à cette dernière question qui rechargera les privilèges afin de valider les modifications apportées.

Voilà, la configuration de votre base de données est terminée.

Installation de PHP

Lancer la commande :

$ su -c 'yum install php'

Pour vérifier que php est bien installé, nous allons créer un fichier test.php dans le dossier /var/www/html/ et y insérer l'instruction suivante :

 <?php phpinfo();?>

Installation de PhpMyAdmin

Cette interface web est très pratique pour configurer vos bases de données. Il faut installer le paquet suivant :

# yum install phpmyadmin

Ceci a pour effet d'installer la librairie php-mysql.

Test de l'environnement

Une fois les étapes précédentes réalisées, nous allons pouvoir démarrer notre serveur 'Apache', si celui-ci ne l'était pas.

$ /etc/init.d/httpd start 

ou pour le redémarrer :

$ /etc/init.d/httpd restart

Puis démarrer le serveur mysql :

$ /etc/init.d/mysqld start

Une fois que celui-ci est démarré, vous pouvez accéder à la page précédemment créée "test.php".

Serveur-apache-php.png


L'Interface Homme-Machine (IHM) "PhpMyAdmin" est très pratique. Je l'utilise tout le temps. Elle est d'autant plus pratique que vous pouvez accéder à vos bases de données même de l'extérieur à condition que votre PC soit configuré dans ce sens.


Phpmyadmin.png

Pour aller plus loin ...

Hôtes virtuels

Pour ma part, j'ai créé un dossier "webdev" dans mon "/home/user" qui contient tous les sites développés ou en cours de développement. J'ai créé un fichier de configuration dans "/etc/httpd/conf.d/messites.conf" contenant les adresses des sites à utiliser.

# activation des hôtes virtuels
NameVirtualHost *:80

# Hôte virtuel par défaut
<VirtualHost *:80>
       # home du site : URL = http://monsite/
       ServerName  monsite
       # Dossier contenant les pages
       DocumentRoot /home/user/webdev/monsite/
       # jeu de caractères (UTF-8 par défaut)
       AddDefaultCharset ISO-8859-1
</VirtualHost>

Migration MySQL de Windows à Fedora

J'ai eu besoin de migrer des données depuis Windows vers Fedora. Trois possibilités s'offrent à vous :

  • l'exportation via phpmyadmin et l'import via la même interface;
  • l'utilisation de mysqldump pour l'export :
mysqldump -u nom_utilsateur -p nom_base > backup

pour l'import utiliser cette commande :

mysql -u  nom_utilsateur -p nom_base < backup
  • déplacer le ou les dossiers présents dans le répertoire MySQL de Windows vers le répertoire /var/lib/mysql/. Le nom des dossiers correspond aux noms des bases de données.

Astuce

Pour ne pas avoir à renseigner le mot de passe constamment (ce qui peut arriver lorsque qu'on développe), il suffit d'exécuter cette commande :

# chown -R nom_utilisateur /var/www/

[1] http://www.apache.org

[2] http://doc.fedora-fr.org/wiki/Installation_et_configuration_d%27Apache

Actions
Espaces de noms
Variantes