24 févr. 2011

Installez rapidement Apache,PHP,CGI,... sur Linux Ubuntu


Il n'est pas simple de pouvoir installer très rapidement Apache, PHP, CGI, etc... sur Linux, afin de développer des scripts web. XAMPP est l'outil que je vous présenterai, c'est plutôt un package de logiciels, préconfigurés, et prêts à fonctionner immédiatement sur la machine. Et ce en un clic ! Ces logiciels vous permettront entre autres, de faire du php, CGI, mySql, etc...
Alors qu'est-ce qu'on attend ? Let's GO !

=============================================
Nouveauté* : installation rapide pour les étudiants.

Si vous n'avez pas envie de lire ce (court) article, et que vous voulez directement passer à l'installation, alors téléchargez ce fichier, décompressez l'archive, et lancez (dans un terminal ou non) , le programme install.run 



http://bit.ly/MtPn5i


=============================================




Installation pas à pas.



1) Avant tout, assurons nous que vous avez l'option "Ouvrir dans un terminal" lorsque vous cliquez avec le bouton droit, une fois dans un dossier.
Si ce n'est pas le cas, tapez dans un terminal :

sudo apt-get install nautilus-open-terminal
nautilus -q




2) Téléchargez la dernière version de Xampp ici : http://www.apachefriends.org/fr/xampp-linux.html#1044
Cliquez sur le fichier XAMPP Linux dans la colonne "version", puis téléchargez. (patience, il pèse environ 75 Mo )

3) Une fois le téléchargement terminé, rendez vous dans le dossier dans lequel vous avez téléchargé l'archive tar.gz (sous firefox par exemple, par défaut les téléchargements vont dans le dossier ~/Téléchargements ) (note : ~ équivaut à /home/votre_user

4) Dans ce dossier, faites clic-droit de la souris (pas sur une icône, mais dans un espace blanc), puis choisissez : "Ouvrir dans un terminal" (ou "Open in terminal" ). En principe, un terminal devra s'ouvrir, et vous devriez être dans le répertoire du fichier téléchargé.

5) Pour vérifier qu'on est bien dans le dossier du fichier téléchargé, faites :

ls xampp*.tar.gz


Si le nom du fichier téléchargé s'affiche, c'est que c'est bon. Sinon, vous devez naviguer avec votre terminal jusqu'au fichier téléchargé ( par exemple : cd ~/Téléchargements ; )

6) Dans cette partie, je suppose que vous êtes dans le dossier du fichier téléchargé. Entrez ces suites de commandes :


sudo mkdir -p /opt  
sudo  tar  xvfz  ./xampp-linux-*.tar.gz  -C  /opt 


La première commande crée le dossier /opt, et la deuxième décompresse l'archive tar.gz dans ce dossier /opt

Voilà, c'est fini, vous avez tout maintenant ! A présent tout est installé sur votre machine, nous allons maintenant le paramétrer un tout petit peu.


Paramétrage rapide.
7) Une fois le "pack" installé, il faut bien démarrer le serveur Apache. On va avant cela sauvegarder votre identifiant dans une variable que j'appelle "moi". Entrez ces commandes

moi=`whoami`
#Démarre le serveur HTTP Apache
sudo /opt/lampp/lampp start  

Le serveur HTTP Apache a maintenant démarré ! Vous pourrez naviguer (dès maintenant) sur votre site local en allant avec le navigateur internet, à l'adresse : http://localhost


**Accès aux fichiers du site**

Par défaut, les fichiers de votre site doivent se trouver dans le dossier /opt/lampp/htdocs , et les fichiers de script CGI dans /opt/lampp/cgi-bin.
Le problème est que, par défaut, vous n'avez pas le droit d'accéder en écriture à tout dossier différent de votre dossier personnel. On va donc donner les droits d'accès en écriture au dossier /opt/lampp/htdocs, (car par défaut, vous n'en avez pas le droit). Idem pour cgi-bin.

cd  /opt/lampp 
sudo chown  $moi:$moi  htdocs  -R
sudo chown  $moi:$moi  cgi-bin -R


Personnellement, j'ai rajouté (chez moi) un "sudo chmod 777 cgi-bin -R" pour m'assurer que j'ai le droit d'accéder en écriture, aux fichiers CGI. Mettre tout un dossier en 777 est un risque en matière de sécurité, mais je l'ai fais à des fins de test sur mon PC ;-)


** Raccourcir l'accès aux fichiers/dossiers du site.

Souvent, on préfère avoir tout d'un coup dans le dossier personnel, plutôt que de devoir naviguer dans les dossiers systèmes pour retrouver ses documents. Dans cet exemple, on va créer un dossier public_html dans le dossier personnel (home), qui référencera le dossier de notre site, /opt/lampp/htdocs


cd ~
ln -s  /opt/lampp/htdocs/   public_html
ln -s  /opt/lampp/cgi-bin/  /opt/lampp/htdocs/cgi-bin


De cette manière, à partir de votre dossier personnel, vous n'aurez qu'à entrer dans le dossier public_html pour voir vos fichiers/dossiers de votre site http local.

**Lancer le serveur HTTP au démarrage de l'ordinateur (recommandé) :

sudo ln  -s   /opt/lampp/lampp    /etc/rc2.d/S99lampp
sudo ln  -s   /opt/lampp/lampp    /etc/rc1.d/K02lampp



Voilà ! ;-)

Petit rappel : 
- Vous accèderez à votre site local, via l'adresse : http://localhost (tentera d'accéder par défaut à l'adresse http://localhost/index.php  <==> /opt/lampp/htdocs/index.php ) 
- Pour faire des scripts CGI, mettez les fichiers .cgi dans le dossier /opt/lampp/cgi-bin , ou bien dans le dossier ~/public_html/cgi-bin SI vous avez utilisé les raccourcis qu'on a créé dans le dossier personnel.
- Ces fichiers CGI doivent être exécutables (sinon faites le avec chmod a+x ~/public_html/cgi-bin/*.cgi ).
Dans tout code Html, pour référencer les fichiers CGI, il faut écrire : http://localhost/cgi-bin/nomDuFichier.cgi , sachant que nomDuFichier.cgi est en réalité dans ~/public_html/cgi-bin ou dans /opt/lampp/cgi-bin

- Cas particulier : Si vous êtes dans une université (exemple à l'UPMC), et que là bas, vos fichiers sont accessibles via : http://localhost/~numeroEtudiant , alors, l'import/export de vos fichiers de votre ordinateur vers celui de l'université peut être fastidieux (sur votre ordinateur, c'est sans le ~numeroEtudiant). Dans ce cas, vous pouvez créer un dossier "~votreNumeroEtudiant" dans /opt/lampp/htdocs, et déplacer les fichiers du site dans ce dossier là.


cd /opt/lampp/htdocs

#On crée le dossier ~numeroEtudiant. Ex. ~2900001
mkdir '~2900001'
mv index.php index.xampp.php
nautilus . & 

=> Avec la souris, déplacez TOUT dans le dossier ~2900001 (sauf index.xampp.php ) [merci Nunzia Coppola ].
En renommant le fichier index.php en index.xampp.php, cela permettra de lister le contenu de notre site rien qu'en tapant http://localhost . En effet, il y aura un listing car aucun fichier dans htdocs ne se nomme index.php. Le cas contraire, c'est le contenu d' index.php qui serait affiché si on entrait http://localhost).


Avec cette manière de procéder, vous pourrez placer (dans le dossier ~2900001) tous les fichiers web de votre compte de l'université, et y accéder par http://localhost/~2900001

De plus, on pourra aussi créer un dossier ~/public_html_universite qui lui, référencera le dossier ~2900001 de /opt/lampp/htdocs . Ainsi, vous pourrez accéder à vos copies de fichiers d'université via le dossier ~/public_html_universite ou /opt/lampp/htdocs/~2900001 ou http://localhost/~2900001



cd ~
ln -s  /opt/lampp/htdocs/~2900001  public_html_universite




Finalement, on aura  : 
Contenu des fichiers à l'Université :
~/public_html:                                                 
                      contient cgi-bin/ , fichiers web 

Contenu des dossiers chez vous :
 ~/public_html_universite
                                        contient cgi-bin/, fichiers web


(Chez moi (en vrai) , mon ~/public_html représente le dossier qui contient les fichiers de ma fac ;-) )

Voilà, j'espère que cela vous aurait aidé.

4 commentaires:

  1. Merci Stéphane, ton aide est précieux !!!!!
    comme on pourrai faire sans toi....
    par contre il faut que tu fasse un remarque par à rapport le fichier index.php
    Nunzia Coppola

    RépondreSupprimer
  2. yes papy t'es un grand !

    RépondreSupprimer