Configuration du serveur Apache pour éviter l'embarras d'avoir son site lié à un site indésirable
Imaginez que vous soyez le responsable d'un site et qu'un site pornographique ou néo-nazi mette, dans un de ses documents, un lien vers votre site. Que pouvez-vous faire si vous voulez éviter que votre site se trouve à votre corps défendant associé à un tel site?
Le logiciel Apache offre certaines possibilités, qui ne sont toutefois pas infaillibles:
-
La pierre angulaire d'une défense contre des liens indésirables
est la possibilité de détecter quel site contenait un lien
qui a amené le lecteur sur votre site. Le header
"referer",
généralement envoyé par le butineur de l'utilisateur
lors d'une requête, fournit l'information nécessaire (URL du
document contenant le lien vers votre site).
-
La directive de configuration
SetEnvIf
permet de définir une variable d'environnement (appelons-laPornSite
) si la valeur du headerreferer
répond à certains critères:SetEnvIf Referer www\.somepornsite\.com PornSite SetEnvIf Referer www\.otherpornsite\.com PornSite SetEnvIf Referer [sS][eE][xX] PornSite
Le troisième élément de chaque directive est une expression régulière (voir documentation Unix) utilisée pour analyser la valeur du header
referer
. -
Vous pouvez ensuite tout bonnement interdire l'accès à votre
site si la variable d'environnement
PornSite
est définie. On utilise pour cela une directive <Limit>:<Limit GET> order deny,allow deny from env=PornSite allow from all </Limit>
-
Comme alternative à l'interdiction d'accès, on peut utiliser
le mécanisme de
"Server-Side
Includes" pour ajouter automatiquement, sur la base de la présence
de la variable d'environnement
PornSite
, un avertissement au début du document demandé, indiquant clairement que votre site, bien que référencé par des sites au contenu douteux, n'a rien à voir avec les sites en question:<!--#if expr="$PornSite" --><!--#include virtual=/Path/To/Your/Disclaimer.html --><!--#endif -->
- Le serveur Apache permet aussi d'avoir des règles de ré-écriture d'URLs qui sont appliquées à l'URL fournie dans la requête du client. Ce mécanisme pourrait être utilisé pour rediriger le visiteur provenant d'un site douteux vers un document de désaveu.
Rappel: Si le butineur de l'utilisateur ne fournit pas le header referer, il n'y a pas moyen de déterminer quel document a permis à un visiteur d'arriver sur votre site.