Configurer la redirection de sites web dans ServBay
La redirection de sites web consiste à guider automatiquement les visiteurs d'une URL vers une autre. Configurer des redirections dans un environnement de développement local est essentiel pour simuler le comportement d'un environnement de production, tester les modifications de structure d'URL ou garantir que les anciens liens restent fonctionnels dans les nouvelles versions du site. ServBay, en tant que puissante solution de développement web local, vous permet de configurer facilement des redirections via ses serveurs web intégrés (Caddy ou Nginx).
Vue d'ensemble
Dans ServBay, chaque site que vous créez est géré par une configuration de serveur web distincte. Les redirections sont réalisées en modifiant ces fichiers de configuration. ServBay prend en charge Caddy et Nginx comme serveurs web, ce qui vous permet de choisir celui qui correspond à vos besoins de projet ou à vos préférences. La configuration d'une redirection implique généralement de spécifier le motif de l'URL source, l'URL de destination, et le type de redirection (comme 301 pour une redirection permanente ou 302 pour une redirection temporaire).
Cas d'utilisation
Voici quelques situations courantes où la configuration de redirections dans ServBay en local s’avère utile :
- Simulation d'environnement de production : Assurez-vous que votre configuration locale reflète fidèlement les règles de redirection du serveur de production.
- Test du HTTPS : Forcez la redirection de toutes les requêtes HTTP vers HTTPS pour simuler une connexion sécurisée.
- Normalisation des URL : Redirigez les domaines avec ou sans
www
afin d'assurer la cohérence des URLs (www vers non-www ou inversement). - Gestion de changement de structure d'URL : Lors de la modification du chemin ou de la structure des pages, redirigez les anciennes URLs vers les nouvelles pour éviter les erreurs « Page non trouvée » lors des tests locaux.
- Simulation de migration de domaine : Testez des redirections entre un ancien et un nouveau nom de domaine.
Prérequis
Pour configurer des redirections de sites dans ServBay, il vous faut :
- ServBay déjà installé et en fonctionnement.
- Avoir ajouté et configuré dans ServBay le site souhaité pour la redirection.
- Savoir quel serveur web (Caddy ou Nginx) est utilisé par votre site.
Méthodes de configuration
ServBay fournit un fichier de configuration de serveur web dédié pour chaque site. Vous pouvez accéder et modifier ces fichiers simplement via l'interface de ServBay.
Accéder au fichier de configuration du site
- Ouvrez l'application ServBay.
- Dans le panneau de navigation à gauche, cliquez sur Site Web (Website).
- Repérez le site pour lequel vous souhaitez configurer la redirection et cliquez sur son nom pour accéder à sa page de détails.
- Sur la page de détails du site, recherchez et cliquez sur « Fichier de configuration » ou une option équivalente (l’intitulé et l’emplacement peuvent légèrement varier selon la version de ServBay). Ceci ouvrira le fichier de configuration du serveur web associé à ce site.
Ensuite, configurez la redirection selon que votre site utilise Caddy ou Nginx, en suivant les instructions ci-dessous.
Configurer une redirection avec Caddy
Si votre site utilise Caddy comme serveur web, vous devrez modifier son fichier Caddyfile. La syntaxe du Caddyfile est simple et intuitive.
Voici des exemples classiques de configuration de redirections avec Caddy. Ajoutez-les à votre Caddyfile, habituellement à l’intérieur du bloc d’adresse du site ({}
).
Exemple 1 : Redirection HTTP vers HTTPS
Caddy gère automatiquement la redirection HTTP vers HTTPS par défaut, à condition d’avoir un certificat SSL configuré (via la CA utilisateur ServBay ou ACME). Pour un contrôle manuel ou plus fin, vous pouvez employer la directive redir
:
servbay.demo {
# ... autres configurations ...
# Forcer toutes les requêtes HTTP à être redirigées vers HTTPS
# Si vous utilisez le SSL de ServBay, cette règle est généralement inutile
# Pour personnaliser le comportement, vous pouvez écrire :
redir http://servbay.demo https://servbay.demo{uri} permanent
# ... autres configurations ...
}
2
3
4
5
6
7
8
9
10
Exemple 2 : Redirection non-www vers www
Rediriger servbay.demo
vers www.servbay.demo
:
servbay.demo {
# Rediriger de façon permanente toutes les requêtes vers www.servbay.demo
redir https://www.servbay.demo{uri} permanent
}
www.servbay.demo {
# Configuration normale du site www.servbay.demo
root * /Applications/ServBay/www/your-servbay-demo-site
file_server
# ... autres configurations ...
}
2
3
4
5
6
7
8
9
10
11
Exemple 3 : Redirection www vers non-www
Rediriger www.servbay.demo
vers servbay.demo
:
www.servbay.demo {
# Rediriger de façon permanente toutes les requêtes vers servbay.demo
redir https://servbay.demo{uri} permanent
}
servbay.demo {
# Configuration normale du site servbay.demo
root * /Applications/ServBay/www/your-servbay-demo-site
file_server
# ... autres configurations ...
}
2
3
4
5
6
7
8
9
10
11
Exemple 4 : Redirection de chemins spécifiques
Rediriger l'ancien chemin /old-path
vers le nouveau /new-path
:
servbay.demo {
# ... autres configurations ...
# Redirection permanente de /old-path vers /new-path
redir /old-path /new-path permanent
# Redirection temporaire de /deprecated/page.html vers /new/page/
redir /deprecated/page.html /new/page/ temporary
# ... autres configurations ...
}
2
3
4
5
6
7
8
9
10
11
Types de redirection Caddy
permanent
: 301, redirection permanente, recommandée pour le SEO.temporary
: 302, redirection temporaire.internal
: réécriture interne (l’URL reste la même, ce n'est pas une vraie redirection HTTP).
Après avoir modifié le Caddyfile, enregistrez-le : ServBay rechargera la configuration de Caddy, éventuellement automatiquement ou après validation de votre part.
Configurer une redirection avec Nginx
Si votre site utilise Nginx comme serveur web, modifiez le fichier de configuration Nginx correspondant (généralement un fichier .conf
). Nginx utilise les instructions return
ou rewrite
pour effectuer les redirections. return
est adapté aux redirections simples et fixes, tandis que rewrite
accepte des expressions régulières pour les cas plus complexes.
Voici quelques exemples courants de redirection avec Nginx. Ajoutez-les dans le fichier .conf
de votre site, généralement au sein du bloc server
.
Exemple 1 : Redirection HTTP vers HTTPS
Sous ServBay, si votre site écoute à la fois sur les ports 80 et 443, ajoutez la règle de redirection dans le bloc server
relatif au port 80 :
server {
listen 80;
listen [::]:80;
server_name servbay.demo www.servbay.demo;
# Rediriger toutes les requêtes HTTP vers HTTPS
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name servbay.demo www.servbay.demo;
# ... Autres paramètres HTTPS ...
# ssl_certificate ...;
# ssl_certificate_key ...;
# Racine du site web, etc.
root /Applications/ServBay/www/your-servbay-demo-site;
index index.html index.htm index.php;
# ... autres blocs location, etc. ...
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Exemple 2 : Redirection non-www vers www
Rediriger servbay.demo
vers www.servbay.demo
:
server {
listen 80;
listen [::]:80;
server_name servbay.demo; # Ecoute le domaine sans www
# Redirige toutes les requêtes vers le sous-domaine www tout en conservant le protocole et l'URI
return 301 $scheme://www.servbay.demo$request_uri;
}
server {
listen 80;
listen [::]:80;
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name www.servbay.demo; # Ecoute le domaine avec www
# ... Configuration normale du site www ...
# ssl_certificate ...;
# ssl_certificate_key ...;
root /Applications/ServBay/www/your-servbay-demo-site;
index index.html index.htm index.php;
# ...
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Exemple 3 : Redirection www vers non-www
Rediriger www.servbay.demo
vers servbay.demo
:
server {
listen 80;
listen [::]:80;
server_name www.servbay.demo; # Ecoute le domaine avec www
# Redirige toutes les requêtes vers le domaine sans www, en conservant le protocole et l'URI
return 301 $scheme://servbay.demo$request_uri;
}
server {
listen 80;
listen [::]:80;
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name servbay.demo; # Ecoute le domaine sans www
# ... Configuration normale du site sans www ...
# ssl_certificate ...;
# ssl_certificate_key ...;
root /Applications/ServBay/www/your-servbay-demo-site;
index index.html index.htm index.php;
# ...
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Exemple 4 : Redirection de chemins spécifiques (avec bloc location
+ return
ou rewrite
)
Rediriger l’ancien chemin /old-path
vers le nouveau /new-path
:
server {
# ... Autres configurations server ...
location = /old-path {
# Correspondance exacte de /old-path, redirection permanente vers /new-path
return 301 /new-path;
}
location /deprecated/ {
# Redirige temporairement toutes les requêtes sous /deprecated/ vers /archive/
rewrite ^/deprecated/(.*)$ /archive/$1 temporary;
}
# ... Autres blocs location ...
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Types de redirection Nginx
301
: redirection permanente.302
: redirection temporaire.redirect
: équivalent à 302.permanent
: équivalent à 301.
Après modification du fichier Nginx .conf
, sauvegardez-le : ServBay rechargera ensuite la configuration automatiquement ou vous invitera à le faire.
Points d'attention
- Sauvegardez vos fichiers de configuration : Avant toute modification, faites une copie de secours pour revenir en arrière en cas de problème.
- Vérifiez la syntaxe : Après modification, vérifiez que la syntaxe est correcte. ServBay effectue généralement un contrôle de base à l’enregistrement, mais une vérification manuelle reste plus sûre. Pour Nginx, vous pouvez utiliser la commande
nginx -t
(via votre terminal si Nginx est dans le PATH du système ou depuis le terminal intégré de ServBay). - Testez vos redirections : Après configuration, testez systématiquement tous les cas de figure dans le navigateur (avec/ sans www, HTTP/HTTPS, chemins spécifiques) pour vous assurer du bon fonctionnement.
- Cache du navigateur : Les redirections 301 sont stockées en cache par les navigateurs. Si vous modifiez fréquemment des règles 301 lors des tests, videz le cache ou utilisez le mode navigation privée/le mode développeur avec l’option « désactiver le cache ». Pour des tests temporaires, privilégiez les redirections 302 avant de finaliser en 301.
- Redémarrage ServBay : Après toute modification de configuration, assurez-vous que ServBay a bien rechargé la configuration serveur. Généralement, cela se fait automatiquement ou via une notification/bouton dans l'UI.
Questions fréquentes (FAQ)
Q : J’ai configuré une redirection mais mon navigateur ne redirige pas. Pourquoi ?
R : Voici quelques causes probables :
- Erreur de configuration : Vérifiez la syntaxe du fichier modifié et qu’il a été correctement enregistré.
- Configuration ServBay non rechargée : Assurez-vous que la nouvelle configuration est bien prise en compte.
- Cache du navigateur : Videz le cache ou testez en mode navigation privée.
- Problème de correspondance d’URL : Vérifiez que la règle de redirection correspond exactement à l’URL/chemin que vous testez.
Q : Quelle différence entre les redirections 301 et 302 ? Laquelle utiliser en local ?
R : 301 signifie redirection permanente, elle indique aux navigateurs et moteurs de recherche que la ressource a changé d’adresse de façon définitive — c’est bénéfique pour le SEO. 302 est temporaire, indiquant un déplacement provisoire. En développement local, privilégiez 302 pour les tests car elle n'est pas mise en cache par les navigateurs. Pour simuler un changement définitif, passez en 301 une fois vos tests terminés.
Q : J’ai modifié mon fichier de configuration mais ServBay affiche une erreur ou le serveur web refuse de démarrer. Que faire ?
R : Il est probable qu’il y ait une erreur de syntaxe. Vérifiez attentivement les modifications apportées et comparez-les avec la documentation officielle de Caddy/Nginx. Consultez les logs de ServBay pour des informations détaillées sur le problème.
Résumé
Configurer des redirections web sous ServBay est une opération courante en développement local, réalisable simplement en éditant les fichiers de configuration Caddy ou Nginx du site. Que ce soit pour simuler un environnement de production, tester le HTTPS ou accompagner des modifications de structure d’URL ou de domaine, la maîtrise des directives de redirection (redir
pour Caddy, return
/rewrite
pour Nginx) vous permettra de mener vos développements efficacement dans ServBay. N’omettez pas de tester chaque scénario et prenez en compte l’impact du cache navigateur sur les redirections.