logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
doc:reseau:apache2:tp01 [22/09/2014 16:14]
Hypathie [Créer un site web avec apache2]
doc:reseau:apache2:tp01 [22/09/2014 18:04]
Hypathie [Sécuriser son site web]
Ligne 259: Ligne 259:
 La mise en place d'un Virtualhost est réussie ! La mise en place d'un Virtualhost est réussie !
 </​code>​ </​code>​
 +
 +===== Installer le module php=====
 +===Installer libapache2-mod-php5 ===
 +Ce paquet casse le MPM worker(([[http://​httpd.apache.org/​docs/​2.2/​mod/​worker.html]])) et engendre l'​installation du MPM prefork(([[http://​httpd.apache.org/​docs/​2.2/​mod/​prefork.html]])).\\ ​
 +
 +<code root>​apt-get install libapache2-mod-php5</​code>​
 +
 +
 +Une fois l'​installation effectuée on peut vérifier que php5 est apparu dans /​etc/​apache2/​mod-available. ​
 +
 +<code root>ls -l /​etc/​apache2/​mods-available/​php5*</​code>​
 +<​code>​-rw-r--r-- 1 root root 898 août  21 10:49 /​etc/​apache2/​mods-available/​php5.conf
 +-rw-r--r-- 1 root root  59 août  21 10:49 /​etc/​apache2/​mods-available/​php5.load</​code>​
 +
 +Dans /​etc/​apache2/​mod-enabled,​ ce sont des liens symboliques qui activent ce module:
 +<code root>ls -l /​etc/​apache2/​mods-enabled/​php5*</​code>​
 +<​code>​lrwxrwxrwx 1 root root 27 sept. 20 11:40\
 + /​etc/​apache2/​mods-enabled/​php5.conf -> ../​mods-available/​php5.conf
 +lrwxrwxrwx 1 root root 27 sept. 20 11:40\
 + /​etc/​apache2/​mods-enabled/​php5.load -> ../​mods-available/​php5.load</​code>​
 +
 +-> Puisque les liens sont là, le module est activé.
 +
 +
 +
 +===Activer/​désactiver un module ===
 +
 +  * ''​a2enmod''​ : (apache2 enable module) : active un module apache2
 +  * ''​a2dismod''​ : (apache2 disable module) : désactive un module apache2
 +
 +Le module est activé par défaut, mais si ce n'​était pas le cas : 
 +
 +<code root>​a2enmod php5</​code>​
 +Si on active ou désactive un module ne pas oublier après l'​opération de réactiver apache : ''​service apache2 restart''​
 +
 +===Créer la page de test ===
 +
 +
 +<code root>mv /​var/​www/​index.html /​var/​www/​index.php</​code>​
 +<code root>vim /​var/​www/​index.php</​code>​
 +<​code>​
 +<​html>​
 + <​body>​
 +  <​h1>​It works!</​h1>​
 +  <​p>​This is the default web page for this server.</​p>​
 +  <?php
 +echo "La date du jour est " . date("​d/​m/​Y"​) . "​!\n";​
 +  ?>
 + </​body>​
 +</​html>​
 +</​code>​
 +
 +  * Recharger apache : 
 + 
 +<code root>​service apache2 restart</​code>​
 +
 +  * Tester en tapant dans le navigateur :
 +''​http://​ip-du-serveur/''​
 +
 +<​code>​It works!
 +
 +This is the default web page for this server.
 +La date du jour est 20/09/2014! </​code>​
 +
 +Tous les outils sont en place pour apprendre les langages html et php ! 8-)
 +
  
 =====Sécuriser son site web===== =====Sécuriser son site web=====
Ligne 284: Ligne 350:
 <code root>​service apache2 restart</​code>​ <code root>​service apache2 restart</​code>​
  
-====Vérifier ​certaines options <​Directory>​ de son Virtualhost====+====Modifier ​certaines options <​Directory>​ de son Virtualhost====
  
   * Désactiver le site "​sites-available/​default"​ :    * Désactiver le site "​sites-available/​default"​ : 
Ligne 342: Ligne 408:
 <​code>​mkdir -p monsite.com/​public_html</​code>​ <​code>​mkdir -p monsite.com/​public_html</​code>​
  
-  * On édite un index.html +  * On édite un index pour le dossier /​home/​web/​monsite.com/​public_html/  ​: 
-<code root>vim /​home/​web/​monsite.com/​public_html/​index.html</​code>​+Le module php5 est en place et a été testé, donc on peut créer un "​index.php"​. 
 + 
 +<code root>vim /​home/​web/​monsite.com/​public_html/​index.php</​code>​
 <​code><​html>​ <​code><​html>​
  <​body>​  <​body>​
  <​h1>​Bienvenue sur pegaseous.com</​h1>​  <​h1>​Bienvenue sur pegaseous.com</​h1>​
   <​p>​Site en cours de réalisation !</p>   <​p>​Site en cours de réalisation !</p>
 +  <?php
 +  echo "La date du jour est " . date("​d/​m/​Y"​) . "​!\n";​
 +  ?>
  </​body>​  </​body>​
 </​html></​code>​ </​html></​code>​
Ligne 472: Ligne 543:
  
   * On supprime le fichier "​monsite.com"​ de /var/www/ :   * On supprime le fichier "​monsite.com"​ de /var/www/ :
 +(Si on a suivi précédemment : [[atelier:​chantier:​apache2#​creation-du-site-web-dans-var-www|création de "​monsite.com"​ dans /​var/​www/​]])
 <code root>cd /​var/​www/</​code>​ <code root>cd /​var/​www/</​code>​
 <code root>rm -r monsite.com</​code>​ <code root>rm -r monsite.com</​code>​
Ligne 478: Ligne 550:
 <code root>ln -s /​home/​web/​monsite.com/​ /​var/​www/​monsite.com</​code>​ <code root>ln -s /​home/​web/​monsite.com/​ /​var/​www/​monsite.com</​code>​
  
-====Limiter ​l'accès à toute l'​arborescence du système Linux====+====Vérifier ​l'appartenance et les droits des fichiers utilisés par "​apache"​====
  
 ===Modifier le groupe de /var/www === ===Modifier le groupe de /var/www ===
 +Le groupe www-data ne doit pas être propriétaire de /var/www/ ce fichier peut appartenir à son groupe.
  
 <code root>​chown -R root:​www-data /​var/​www/​*</​code>​ <code root>​chown -R root:​www-data /​var/​www/​*</​code>​
  
 ===On vérifie les droits POSIX de /var/www/ === ===On vérifie les droits POSIX de /var/www/ ===
-<​note ​tip+<​note ​important
-A priori le fichier /​var/​www/​index.html, au même titre que n'​importe quelle page web accessible depuis un navigateur web, devrait avoir les droits suivants :+A priori le fichier /​var/​www/​index.php, au même titre que n'​importe quelle page web accessible depuis un navigateur web, devrait avoir les droits suivants :
  
-  -rw-r----- 1 root www-data 4096 sept. 22 11:47 index.html+  -rw-r----- 1 root www-data 4096 sept. 22 11:47 index.php
  
 On utilise les droits suivants : On utilise les droits suivants :
Ligne 498: Ligne 571:
 <code root>​chmod 755 /​var/​www</​code>​ <code root>​chmod 755 /​var/​www</​code>​
  
-  * **Pour /​var/​www/​index.html**, il faut donc :\\ ''​-rw-r----- 1 root www-data 4096 sept. 22 11:47 index.html''​ +  * **Pour /​var/​www/​index.php**, il faut donc :\\ ''​-rw-r----- 1 root www-data 4096 sept. 22 11:47 index.php''​ 
-<code root>​chmod 640 /​var/​www/​index.html</​code>​+<code root>​chmod 640 /​var/​www/​index.php</​code>​
  
   * **Pour /​home/​web/​monsite.com**,​ il faut donc :\\ ''​drwxr-xr-x 3 root www-data 4096 sept. 22 11:44 monsite.com'':​   * **Pour /​home/​web/​monsite.com**,​ il faut donc :\\ ''​drwxr-xr-x 3 root www-data 4096 sept. 22 11:44 monsite.com'':​
Ligne 507: Ligne 580:
 <code root>​chmod 755 /​home/​web/​monsite.com/​public_html/</​code>​ <code root>​chmod 755 /​home/​web/​monsite.com/​public_html/</​code>​
  
-  * **Pour /​home/​web/​monsite.com/​public_html/​inde**, il faut donc :\\ ''​-rw-r----- 1 root www-data 4096 sept. 22 11:44 index.html''​ +  * **Pour /​home/​web/​monsite.com/​public_html/​index.php**, il faut donc :\\ ''​-rw-r----- 1 root www-data 4096 sept. 22 11:44 index.php''​ 
-<code root>​chown root:​www-data /​home/​web/​monsite.com/​public_html/​index.html+<code root>​chown root:​www-data /​home/​web/​monsite.com/​public_html/​index.php
- &&​ chmod 640 /​home/​web/​monsite.com/​public_html/​index.html</​code>​+ &&​ chmod 640 /​home/​web/​monsite.com/​public_html/​index.php</​code>​
  
   * **Pour le lien symbolique /​var/​www/​monsite.com** : on ne peut pas modifier ces droits mais ce n'est pas grave. Ce qui compte c'est le fichier vers lequel pointe un lien symbolique.   * **Pour le lien symbolique /​var/​www/​monsite.com** : on ne peut pas modifier ces droits mais ce n'est pas grave. Ce qui compte c'est le fichier vers lequel pointe un lien symbolique.
Ligne 530: Ligne 603:
  
 8-) **Le login du compte apache (nom de l'​utilisateur du système Linux) est demandé ainsi que son mot de passe et on peut accéder à ses pages d'​index !** 8-) **Le login du compte apache (nom de l'​utilisateur du système Linux) est demandé ainsi que son mot de passe et on peut accéder à ses pages d'​index !**
- 
-===== Installer le module php===== 
-===Installer libapache2-mod-php5 === 
-Ce paquet casse le MPM worker(([[http://​httpd.apache.org/​docs/​2.2/​mod/​worker.html]])) et engendre l'​installation du MPM prefork(([[http://​httpd.apache.org/​docs/​2.2/​mod/​prefork.html]])).\\ ​ 
- 
-<code root>​apt-get install libapache2-mod-php5</​code>​ 
- 
- 
-Une fois l'​installation effectuée on peut vérifier que php5 est apparu dans /​etc/​apache2/​mod-available. ​ 
- 
-<code root>ls -l /​etc/​apache2/​mods-available/​php5*</​code>​ 
-<​code>​-rw-r--r-- 1 root root 898 août  21 10:49 /​etc/​apache2/​mods-available/​php5.conf 
--rw-r--r-- 1 root root  59 août  21 10:49 /​etc/​apache2/​mods-available/​php5.load</​code>​ 
- 
-Dans /​etc/​apache2/​mod-enabled,​ ce sont des liens symboliques qui activent ce module: 
-<code root>ls -l /​etc/​apache2/​mods-enabled/​php5*</​code>​ 
-<​code>​lrwxrwxrwx 1 root root 27 sept. 20 11:40 /​etc/​apache2/​mods-enabled/​php5.conf -> ../​mods-available/​php5.conf 
-lrwxrwxrwx 1 root root 27 sept. 20 11:40 /​etc/​apache2/​mods-enabled/​php5.load -> ../​mods-available/​php5.load</​code>​ 
- 
--> Puisque les liens sont là, le module est activé. 
- 
-===Activer/​désactiver un module === 
- 
-  * ''​a2enmod''​ : (apache2 enable module) : active un module apache2 
-  * ''​a2dismod''​ : (apache2 disable module) : désactive un module apache2 
- 
-Si on active ou désactive un module ne pas oublier après l'​opération de réactiver apache : ''​service apache2 restart''​ 
- 
-===Créer la page de test === 
- 
-<​code>​mv /​var/​www/​index.html /​var/​www/​index.php</​code>​ 
-<code root>vim /​var/​www/​index.php</​code>​ 
-<​code>​ 
-<​html>​ 
- <​body>​ 
-  <​h1>​It works!</​h1>​ 
-  <​p>​This is the default web page for this server.</​p>​ 
-  <?php 
-echo "La date du jour est " . date("​d/​m/​Y"​) . "​!\n";​ 
-  ?> 
- </​body>​ 
-</​html>​ 
-</​code>​ 
- 
-  * Recharger apache :  
-  
-<code root>​service apache2 restart</​code>​ 
- 
-  * Tester en tapant dans le navigateur : 
-''​http://​ip-du-serveur/''​ 
- 
-<​code>​It works! 
- 
-This is the default web page for this server. 
-La date du jour est 20/09/2014! </​code>​ 
- 
-Puisque tout fonctionne, pour utiliser php dans les autres sites, il n'y a qu'à modifier le nom de leur page d'​index.html en index.php et entrer du code php bien sûr. 
- 
-  * Par exemple pour "​monsite.com"​ : 
- 
-<code root>mv /​home/​web/​monsite.com/​public_html/​index.html /​home/​web/​monsite.com/​public_html/​index.php</​code>​ 
- 
-<code root>vim /​home/​web/​monsite.com/​public_html/​index.php</​code>​ 
-<​code><​html>​ 
- <​body>​ 
- <​h1>​Bienvenue sur monsite.com</​h1>​ 
-  <​p>​Site en cours de réalisation !</p> 
-<?php 
-echo "La date du jour est " . date("​d/​m/​Y"​) . "​!\n";​ 
-  ?> 
- </​body>​ 
-</​html></​code>​ 
- 
-  * Recharger apache :  
-  
-<code root>​service apache2 reload</​code>​ 
- 
-  * Tester en tapant dans le navigateur : 
-''​http://​ip-du-serveur/​monsite.com''​ 
- 
-et cliquer sur ''​public_html/''​ : 
- 
-<​code>​Bienvenue sur monsite.com 
- 
-Site en cours de réalisation ! 
-La date du jour est 20/09/2014! </​code>​ 
- 
-Tous les outils sont en place pour apprendre les langages html et php ! 8-) 
  
  
doc/reseau/apache2/tp01.txt · Dernière modification: 01/11/2019 08:43 par smolski

Pied de page des forums

Propulsé par FluxBB