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
utilisateurs:j5012:brouillons:apache2_vhosts_anywhere [Le 26/06/2014, 13:45]
J5012 mise à jour brouillon
utilisateurs:j5012:brouillons:apache2_vhosts_anywhere [Le 14/04/2017, 15:51] (Version actuelle)
J5012 [ajout de section : cms flatpress]
Ligne 1: Ligne 1:
 +{{tag>​Precise Trusty BROUILLON}}
 +----
 + 
 +====== Des hôtes virtuels avec Apache2 installés n'​importe où ======
 + 
 +Ceci est une astuce voire un tuto destiné soit à rejoindre la doc officielle [[:​apache2|Apache2]],​ soit à fusionner avec le tuto sur les [[tutoriel:​virtualhosts_avec_apache2|hôtes virtuels]].
  
 +Ce tuto est le resultat d'un approfondissement du fonctionnement de Apache2 suite aux problemes d'​usagers du forum ubuntu-fr pour creer des hotes virtuels.
 +
 +Ce tuto n'​abordera pas le contexte des vhosts par ip destiné à un environnement de production.
 +
 +===== Pré-requis =====
 + 
 +  * Disposer des [[:​sudo|droits d'​administration]].
 +  * Disposer d'une connexion à Internet configurée et activée.
 +  * Avoir installé au préalable [[:​apache2|Apache2]].
 + 
 +===== Configuration =====
 + 
 +  * Associez vos noms d'​hôtes à l'IP localhost 127.0.0.1 dans le fichier /etc/hosts
 +  * Utilisez le fichier /​etc/​apache2/​sites-available/​default comme modèle de configuration
 +  * Installez les fichiers ressources de vos sites (cms, atelier php, html statique, etc)
 +
 +==== Hôte virtuel installé dans la partie root (Méthode fortement déconseillée) ====
 +
 +  * créer un lien symbolique de /​var/​www/<​nomdemonsite>​ vers le répertoire réel dans un dossier utilisateur:​
 +  <​code>​sudo ln -s <​répertoire réel> /​var/​www/<​nomdemonsite></​code>​
 +  * donner suffisamment de droits pour que le lien symbolique soit accessible par l'​utilisateur en acces non admin
 +  * modifier le modèle default selon les paramètres du vhost, créer autant de fichiers que de vhosts
 +
 +==== Hôte virtuel installé dans la partie /​home/​votre-login ====
 +
 +  * installer les données du site du vhost n'​importe où dans votre zone utilisateur : /​home/​votre-login
 +  * modifier le modele default sur le paramètre document_root selon le chemin du vhost dans la zone utilisateur,​ créer autant de fichiers que de vhosts
 +
 +===== Utilisation =====
 +
 +  * Naviguez à l'​adresse indiquée dans le /etc/hosts
 +
 +==== Exemple rapide, EasyPhpAlbum Lite Version 2.3.2 : un album photo simple ====
 +
 +EasyPhpAlbum Lite se constitue d'un fichier unique programmé en php (compatible v5), utilisant des fichiers textes comme fichiers de base de données. Son objectif est d'​indexer et de présenter sous forme de vignettes cliquables les images se trouvant dans le même dossier que lui.
 +
 +=== /etc/hosts ===
 +
 +<​code>​
 +127.0.0.1 localhost
 +127.0.1.1 name-of-your-computer
 +127.0.0.1 homepics
 +
 +# The following lines are desirable for IPv6 capable hosts
 +::1     ​ip6-localhost ip6-loopback
 +fe00::0 ip6-localnet
 +ff00::0 ip6-mcastprefix
 +ff02::1 ip6-allnodes
 +ff02::2 ip6-allrouters
 +</​code>​
 +
 +=== /​etc/​apache2/​sites-available/​homepics ===
 +
 +<​code>​
 +<​VirtualHost *:80>
 + ServerAdmin webmaster@homepics
 + ServerName homepics
 +
 + DocumentRoot /​home3/​Images
 + <​Directory />
 + Options FollowSymLinks
 + AllowOverride None
 + </​Directory>​
 + <​Directory /​home3/​Images>​
 + Options Indexes FollowSymLinks MultiViews
 + AllowOverride None
 + Order allow,deny
 + allow from all
 + </​Directory>​
 +
 + ScriptAlias /cgi-bin/ /​usr/​lib/​cgi-bin/​
 + <​Directory "/​usr/​lib/​cgi-bin">​
 + AllowOverride None
 + Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
 + Order allow,deny
 + Allow from all
 + AddHandler cgi-script cgi php phtml
 + </​Directory>​
 +
 + ErrorLog ${APACHE_LOG_DIR}/​error.log
 +
 + # Possible values include: debug, info, notice, warn, error, crit,
 + # alert, emerg.
 + LogLevel warn
 +
 + CustomLog ${APACHE_LOG_DIR}/​access.log combined
 +
 +Alias /doc/ "/​usr/​share/​doc/"​
 +    <​Directory "/​usr/​share/​doc/">​
 +        Options Indexes MultiViews FollowSymLinks
 +        AllowOverride None
 +        Order deny,allow
 +        Deny from all
 +        Allow from 127.0.0.0/​255.0.0.0 ::1/128
 +    </​Directory>​
 +</​VirtualHost>​
 +</​code>​
 +
 +=== Installation du script php ===
 +
 +  * copie du fichier EasyPhpAlbum Lite dans /​home3/​Images
 +  * renommer le script en index.php
 +
 +=== Activation du site homepics avec la commande Apache2 : a2ensite ===
 +
 +<​code>​sudo a2ensite homepics</​code>​
 +
 +ou manuellement en créant un lien symbolique
 +
 +<​code>​sudo ln -s /​etc/​apache2/​sites-enabled /​etc/​apache2/​sites-available/​homepics</​code>​
 +
 +**homepics** peut-être utilisée comme adresse url dans votre navigateur
 +
 +{{:​utilisateurs/​j5012/​brouillons/​easyphpalbumlite_test_vhost_apache2.jpg?​300}}
 +
 +==== Exemple avec Flatpress : application de blog à la Wordpress ====
 +
 +Flatpress est une application php multi-fichiers ne nécessitant aucun serveur Mysql pour le stockage des donnees. Pour démonstration,​ l'​application sera installée dans le dossier dédié /srv avec des droits d'​acces utilisateur ordinaire.
 +
 +=== Ajouter le nom de vhost fpress à /etc/hosts ===
 +
 +<​code>​127.0.0.1 fpress</​code>​
 +
 +=== Télécharger ===
 +
 +http://​flatpress-fr.info/​
 +
 +===  Installer Flatpress dans /srv ===
 +
 +<​code>​sudo cp les-fichiers-flatpress-desarchivés /​srv/​fpress/</​code>​
 +<​code>​chown /srv/fpress operateur-courant-de-la-session</​code>​
 +
 +=== Suite ... ===
 +
 +
 +----
 +//​Contributeurs principaux : [[utilisateurs:​J5012]].//​