Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format
PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
doc:reseau:apache2:redirection [08/11/2015 19:00] bendia atelier:chantier:apache-la-redirection-pour-les-debutants renommé en doc:reseau:apache2:redirection (placement de la page) |
doc:reseau:apache2:redirection [30/05/2023 08:30] (Version actuelle) lagrenouille [Découverte par l'exemple de redirection apache2] |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
* Objet : Découverte par l'exemple de redirection apache | * Objet : Découverte par l'exemple de redirection apache | ||
- | * Niveau requis : {{tag>débutant}} | + | * Niveau requis : {{tag>débutant avisé}} |
* Commentaires : //vous avez un site déjà en ligne et vous voulez appliquer une redirection d'une page vers une autre page. // | * Commentaires : //vous avez un site déjà en ligne et vous voulez appliquer une redirection d'une page vers une autre page. // | ||
* Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | ||
- | * Suivi : {{tag>en-chantier à-placer à-compléter à-corriger }} | + | * Suivi : |
* Création par [[user>trebmuh]] 08/11/2015 | * Création par [[user>trebmuh]] 08/11/2015 | ||
* Testé par [[user>trebmuh]] le 08/11/2015 | * Testé par [[user>trebmuh]] le 08/11/2015 | ||
* Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=145833 | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=145833 | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
+ | * {{tag>à-placer}} | ||
===== Introduction ===== | ===== Introduction ===== | ||
Ligne 25: | Ligne 25: | ||
===== Utilisation ===== | ===== Utilisation ===== | ||
- | Donc, résumons la demande : j'ai une page qui s'affiche et qui contient le lien %%http://tonsite.fr/moulin/parlà%% | + | Donc, résumons la demande : j'ai une page qui s'affiche et qui contient le lien ''%%http://tonsite.fr/moulin/parlà%%'' |
- | et je veux qu'elle redirige vers : %%http://tonsite.fr/cuisine/cestici%% | + | et je veux qu'elle redirige vers : ''%%http://tonsite.fr/cuisine/cestici%%'' |
Nous allons donc utiliser une règle apache de ré-écriture d'adresse : | Nous allons donc utiliser une règle apache de ré-écriture d'adresse : | ||
Ligne 38: | Ligne 38: | ||
<note>Plusse d'information : [[http://www.cheatography.com/davechild/cheat-sheets/mod-rewrite/]] (en ninngliche).</note> | <note>Plusse d'information : [[http://www.cheatography.com/davechild/cheat-sheets/mod-rewrite/]] (en ninngliche).</note> | ||
- | __Remarque 1__ : on pourrait se dire que le L va mettre le foin car il va empêcher la lecture des autres règles. Mais non, car on demande à ce que le client refasse sa requête et donc il faut que ça s'arrête là. Cette règle renvoie une réponse au client, donc il ne faut pas continuer à traiter... et le navigateur client voit arriver une première réponse qui lui dit "hey, c'est plus ici, maintenant c'est à <nouvelle_url>" et donc, le client refait une requête sur <nouvelle_url> et là, la règle de redirection ne correspond plus, par contre d'autres règles plus loin dans le .htaccess peuvent correspondre. | + | ===Remarque 1=== |
+ | On pourrait se dire que le L va mettre le foin car il va empêcher la lecture des autres règles. Mais non, car on demande à ce que le client refasse sa requête et donc il faut que ça s'arrête là.\\ | ||
+ | Cette règle renvoie une réponse au client, donc il ne faut pas continuer à traiter... et le navigateur client voit arriver une première réponse qui lui dit "hey, c'est plus ici, maintenant c'est à <nouvelle_url>" et donc, le client refait une requête sur <nouvelle_url> et là, la règle de redirection ne correspond plus, par contre d'autres règles plus loin dans le .htaccess peuvent correspondre. | ||
- | __Remarque 2__ : il faut étudier les autres règles du .htaccess car l'ordre des règles influe. | + | ===Remarque 2=== |
+ | Il faut étudier les autres règles du .htaccess car l'ordre des règles influe. | ||
- | __Remarque 3__ : si la redirection doit être "permanente", il faut remplacer le **R** par **R=301**. "Permanente", c'est à dire que le navigateur (ou moteur de recherche ou autre) doit conserver l'url cible. Donc, au coup suivant, avec une redirection permanente, le navigateur demandera directement la cible. | + | ===Remarque 3=== |
+ | Si la redirection doit être "permanente", il faut remplacer le **R** par **R=301**. "Permanente", c'est à dire que le navigateur (ou moteur de recherche ou autre) doit conserver l'url cible. Donc, au coup suivant, avec une redirection permanente, le navigateur demandera directement la cible.\\ | ||
L'inverse de "permanente" est "temporaire", cas où le navigateur doit conserver l'adresse initiale. Avec une redirection temporaire, il suffit de retirer la règle du .htaccess et on retrouve l'ancienne url. | L'inverse de "permanente" est "temporaire", cas où le navigateur doit conserver l'adresse initiale. Avec une redirection temporaire, il suffit de retirer la règle du .htaccess et on retrouve l'ancienne url. | ||
- | __Remarque 4__ : la prise en compte est normalement immédiate car le serveur apache vérifie le fichier .htaccess à chaque requête. Ceci dit, il faut faire attention aux caches des navigateurs/moteurs-de-recherche/... | + | ===Remarque 4=== |
+ | La prise en compte est normalement immédiate car le serveur apache vérifie le fichier .htaccess à chaque requête. Ceci dit, il faut faire attention aux caches des navigateurs/moteurs-de-recherche/... | ||
<note>À titre d'exemple, avec Iceweasel, il faut faire un <key>Ctrl+Shift+Suppr</key> et cocher la case "cache" puis cliquer sur le bouton "Effacer maintenant".</note> | <note>À titre d'exemple, avec Iceweasel, il faut faire un <key>Ctrl+Shift+Suppr</key> et cocher la case "cache" puis cliquer sur le bouton "Effacer maintenant".</note> | ||
- | __Remarque 5__ : une façon rapide de tester que la redirection est bien prise en compte est d'utiliser **wget** car il indique les redirections. | + | ===Remarque 5=== |
+ | Une façon rapide de tester que la redirection est bien prise en compte est d'utiliser **wget** car il indique les redirections. | ||
- | __Remarque 6__ : il peut être intéressant (à des fins de testage) de mettre la redirection en premier dans le .htaccess pour voir si elle fonctionne bien. Ceci dit, il faut faire attention car ça peut mettre le souk ailleurs.. | + | ===Remarque 6=== |
+ | Il peut être intéressant (à des fins de testage) de mettre la redirection en premier dans le .htaccess pour voir si elle fonctionne bien. Ceci dit, il faut faire attention car ça peut mettre le souk ailleurs.. | ||