Suite à une demande pour ajouter des liens externes dans notre portail local, le portail n’étant pas nativement un aggrégateur d’URL, j’ai pensé à le faire nativement dans Apache en utilisant le module mod_rewrite.
Le but étant, depuis la location « ext », d’avoir un redirect vers n’importe quellle URL (www.google.com, etc.). La configuration donne ceci :
<Location /ext>
# Activer les options de suivi de liens
Options +FollowSymLinks +SymLinksIfOwnerMatch
# Activer le moteur de réécriture
RewriteEngine On
# Si la requête contient un paramètre 'url' valide
RewriteCond %{QUERY_STRING} (?:^|&)url=([a-zA-Z0-9.-]+)(?:&|$)
# Rediriger vers l'URL indiquée en utilisant HTTPS, sans échappement des caractères spéciaux
RewriteRule .* https://%1? [R=301,L,NE]
</Location>
Ce qui fait que pour, par exemple, le lien suivant : https://votreportailsousapache.fr/ext?url=www.google.com
Le serveur apache vous redirigera automatiquement sur www.google.com.
Cela vous permet donc de générer rapidement un aggrégateur de liens pour n’importe quel portail qui n’accepterait que des liens relatifs ou internes.