LaTeX/Vade mecum
Apache/URL Rewriting
Principe.
Sur Internet on distingue globalement quatre types de redirection automatique des navigateurs vers d'autres adresses que celles sur lesquelles ils arrivent :
Les règles de réécriture appliquées sur tout le serveur Apache se situent dans codice_3 ou codice_4.
Les fichiers .htaccess peuvent également en contenir pour personnaliser chaque répertoire.
D'une manière générale, Apache permet de rediriger vers une autre page grâce à :
AllowOverride.
Attention, si vous n'avez pas créé de VirtualHost, un VirtualHost par défaut est utilisé par apache2 qui ignore les fichiers .htaccess
Pour y remédier :
 sudo vi /etc/apache2/sites-enabled/000-default
et remplacez AllowOverride none par AllowOverride All (normalement 2 fois), puis relancez apache :
 sudo /etc/init.d/apache2 reload
Exemples.
Dans la syntaxe suivante, le point seul représente le répertoire courant, et le slash seul la racine de l'URL (le domaine).
Pour changer le domaine vers "localhost", tout en gardant la même URL :
 SetEnv PHP_VER 5
 Redirect / http://localhost/
Plus subtile, on peut changer l'ordre des paramètres initiaux dans l'URL de destination :
<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteBase /
 RewriteRule ^/xtools/ec/*$ /xtools/pcount/index.php
</IfModule>
Plusieurs flags peuvent être placés en fin de ligne pour préciser la règle :
Pour rediriger les requêtes sous certaines condition il existe "RewriteCond". Par exemple pour que toutes les pages non trouvées renvoient vers l'accueil au lieu d'afficher une erreur :
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php
Les paramètres du codice_12 peuvent être :
etc.
Retirer les doubles slashs dans les URL.
La règle suivante permet de remplacer "//" ou "///" par "/"
RewriteCond %{THE_REQUEST} //+(.+)\sHTTP
RewriteRule ^ /%1 [L,R]
Autre solution, qui évite la redirection si les paramètres de l'URL en contiennent une autre (avec "http(s)://") :
RewriteCond %{QUERY_STRING} !/(https?:\/\/)/ [NC]
RewriteCond %{REQUEST_URI} ^(.+)//+(.+)$
RewriteRule ^(.*)$ %1/%2 [QSA]

Apache/.htaccess
Principe.
Pour protéger un répertoire en particulier (et ses sous-répertoires), il suffit de placer un fichier nommé codice_1 dedans. Apache appliquera instantanément ensuite les règles qu'il contient, uniquement dans cette arborescence. La syntaxe pour définit ces règles (ex : redirections ou protections) est la même que dans les vhosts, sauf que cela n'affectera que le répertoire du fichier .htaccess (donc pas de clause codice_2).
Installation.
Pour autoriser les .htaccess dans le .conf du site, utiliser codice_3 :
 AllowOverride All
Pour les interdire :
 AllowOverride None

Apache/Serveurs virtuels
Principe du vhost.
Apache peut gérer plusieurs sites web simultanément. Ils seront tous accessibles à partir de la même adresse IP et du même port.
Pour les différencier, Apache se sert de l'adresse demandée par le navigateur.
Par exemple si site1.com et site2.com pointent sur la même adresse IP, les URL http://site1.com/ et http://site2.com/ aboutiront sur le même serveur.
Mais au moment de la requête, le navigateur précise qu'il a demandé l'adresse http://site1.com/ ou http://site2.com/.
Apache se sert de cette information pour savoir quel site afficher.
On parle de "serveur virtuel" ou "virtual host" (vhost).
Configuration.
Pour indiquer à Apache quel site correspond à un nom de domaine, on utilise une section codice_1.
Sous Debian, il y a généralement un fichier par section codice_2 dans le répertoire codice_3.
La section devra contenir une directive ServerName qui indiquera le nom associé à ce "serveur virtuel".
Elle pourra également contenir une directive ServerAlias si on veut que d'autres noms aboutissent à ce site.
Par exemple :
<VirtualHost _default_:80>
 ServerAdmin admin@site1.com
 DocumentRoot /home/site1/public_html
 ServerName site1.com
 ServerAlias www.site1.com
</VirtualHost>
<VirtualHost MonIP2:80>
 ServerAdmin admin@site2.com
 DocumentRoot /home/site2/public_html
 ServerName site2.com
 ServerAlias www.site2.com
 AccessLog /home/site2/access.log
 ErrorLog /home/site2/error.log
 <Directory /home/site2/public_html>
 AllowOverride All
 </Directory>
</VirtualHost>
Pour affecter tous les sites et ports, remplacer ceux-ci dans la première balise par *.
En cas d'erreur Apache d'ajouter une "directive" lors de sa relance, ajouter une ligne "NameVirtualHost MonIP:MonPort".
La documentation d'Apache sur les serveurs virtuels contient des informations détaillées sur le sujet.
Pour que ce serveur virtuel fonctionne, il est impératif que les noms site1.com et www.site1.com soient connus par la machine qui tente d'y accéder (celle qui lance le navigateur).
Pour cela il y a plusieurs méthodes :
Include.
Pour éviter de copier-coller les mêmes lignes dans plusieurs vhost, il est possible de les inclure avec la directive "include". Exemple :
Include /etc/apache2/common.conf
ProxyPassMatch.
Pour utiliser les daemons PHP-FPM (qui écoutent sur le port 9000), Apache doit rediriger les connexions avec ProxyPassMatch. Ex :
 ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/var/www/mon_site/$1

Photographie/Fabricants/Horseman/Horseman 985

Photographie/Fabricants/Horseman/Horseman VH-R

Photographie/Personnalités/S/Antal Simonyi

Antal Simonyi était un peintre et photographe hongrois né le 3 juin 1821 à Kecskemét et décédé le 3 janvier 1892 à Budapest.

Photographie/Personnalités/B/James Wallace Black

James Wallace Black était un photographe états-unien (1825 – 1896) installé 173 Washington Street à Boston, Massachusetts.

Photographie/Fabricants/Hyundai Fomex
Hyundai Fomex Co., Ltd est une société sud-coréenne installée à Séoul. Elle est spécialisée dans la production de systèmes d'éclairage pour la photographie et la vidéo, vendus sous la marque Fomex. La société d'abord appelée Hyundai IMAX en septembre 1996 a été renommé Hyundai Fomex en 1999.