# Apache vhost pour alpinux.org (page d'accueil) # À créer via ISPConfig : Sites > Ajouter un site web # Domaine : alpinux.org + www.alpinux.org | DocumentRoot : /var/www/clients/client1/web1/web # # Ce vhost gère également la migration SEO depuis l'ancienne infra (DokuWiki) # vers la nouvelle (wiki.alpinux.org + alpinux.org) ServerName alpinux.org ServerAlias www.alpinux.org Redirect permanent / https://alpinux.org/ ServerName alpinux.org ServerAlias www.alpinux.org DocumentRoot /var/www/clients/client1/web1/web # ── Redirections www → sans-www ───────────────────────────────── RewriteEngine On RewriteCond %{HTTP_HOST} ^www\.alpinux\.org$ [NC] RewriteRule ^ https://alpinux.org%{REQUEST_URI} [R=301,L] # ── Migration SEO : anciennes URLs DokuWiki ────────────────────── # L'ancien wiki tournait sur DokuWiki avec des URLs de type : # /doku.php?id=namespace:page # /wiki/doku.php?id=namespace:page # # Les deux-points (:) sont encodés %3A dans les query strings. # On redirige vers wiki.alpinux.org avec des URLs propres. # /doku.php?id=start → wiki.alpinux.org/ RewriteCond %{QUERY_STRING} ^id=start$ [NC] RewriteRule ^/doku\.php$ https://wiki.alpinux.org/ [R=301,L] # /doku.php?id=alpinux:start → wiki.alpinux.org/alpinux/ RewriteCond %{QUERY_STRING} ^id=alpinux(%3A|:)start$ [NC] RewriteRule ^/doku\.php$ https://wiki.alpinux.org/alpinux/ [R=301,L] # /doku.php?id=namespace:page → wiki.alpinux.org/namespace/page/ # Capture générique : transforme les ":" en "/" dans le chemin RewriteCond %{QUERY_STRING} ^id=([a-z0-9_-]+)(%3A|:)([a-z0-9_-]+)$ [NC] RewriteRule ^/doku\.php$ https://wiki.alpinux.org/%1/%3/ [R=301,L,NE] # /doku.php?id=page (namespace racine) → wiki.alpinux.org/page/ RewriteCond %{QUERY_STRING} ^id=([a-z0-9_-]+)$ [NC] RewriteRule ^/doku\.php$ https://wiki.alpinux.org/%1/ [R=301,L,NE] # /wiki/* → wiki.alpinux.org/* (si l'ancien wiki était monté en sous-répertoire) RewriteRule ^/wiki/(.*)$ https://wiki.alpinux.org/$1 [R=301,L] # ── Fichiers statiques ─────────────────────────────────────────── Options -Indexes +FollowSymLinks AllowOverride None Require all granted DirectoryIndex index.html # Logs ErrorLog /var/log/apache2/alpinux.org-error.log CustomLog /var/log/apache2/alpinux.org-access.log combined SSLEngine on SSLCertificateFile /etc/letsencrypt/live/alpinux.org/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/alpinux.org/privkey.pem