Hébergement Web-old - .htaccess - plusieurs commmandes
... / .htaccess - plusieurs com...
BMPCreated with Sketch.BMPZIPCreated with Sketch.ZIPXLSCreated with Sketch.XLSTXTCreated with Sketch.TXTPPTCreated with Sketch.PPTPNGCreated with Sketch.PNGPDFCreated with Sketch.PDFJPGCreated with Sketch.JPGGIFCreated with Sketch.GIFDOCCreated with Sketch.DOC Error Created with Sketch.
Frage

.htaccess - plusieurs commmandes

Von
IngridM
Erstellungsdatum 2017-08-05 15:24:07 (edited on 2024-09-04 12:30:50) in Hébergement Web-old

Bonjour,

J'ai une question :
J'ai réussi à faire des redirections, comme décrit dans la documentation correspondante, grâce à la commande suivante :
> RewriteEngine on
> Rewritecond %{HTTP_HOST} ^differ-allemand.com$
> Rewriterule ^(.*) https://www.differ-allemand.com/$1 [QSA,L,R=301]

Je souhaite également mettre une page 404 personnalisée sur mon site ("message_404"). J'ai trouvé l'information comme quoi il fallait écrire, également dans le fichier .htaccess, la commande suivante :
> ErrorDocument 404 /message_404.php

La page 404 s'est affichée à merveille, mais, tout d'un coup, la redirection http>https n'a plus fonctionné.
Il semble que la deuxième commande ait écrasé la première.

Que faut-il donc faire ? : écrire deux fichiers .htaccess, l'un avec la redirection, l'autre concernant la page 404 ? Ou faut-il insérer des lignes dans le fichier ? :
> RewriteEngine on
> Rewritecond %{HTTP_HOST} ^differ-allemand.com$
> Rewriterule ^(.*) https://www.differ-allemand.com/$1 [QSA,L,R=301]

> ErrorDocument 404 /message_404.php

Merci de votre aide
Ingrid

P. S. : pour le moment, j'ai enlevé la ligne "ErrorDocument 404 /message_404.php", car la redirection http>https est prioritaire à l'affichage de ma page 404 personnalisée.


3 Antworten ( Latest reply on 2019-11-18 17:41:21 Von
kyodev
)

> Il semble que la deuxième commande ait écrasé la première.

c'est indépendant tu peux mettre les deux directives et beaucoup plus
ce que tu utilises n'est pas complet, même si ça devrait marcher

remplace avec

```text
RewriteEngine On

## no-www -> www
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^ https://www\.%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE,QSA]

## http -> https
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE,QSA]

ErrorDocument 404 /message_404.php
```

Merci beaucoup, kjodev.
C'est parfait. Cela marche.

Bizarre que l'autre commande (celle que tu appelles "incomplète") ait marché malgré tout avant que je n'aie rajouté la ligne concernant la page 404...

Bonne soirée
Ingrid

je pense que c'est une coincidence, que je ne peux expliquer, mais en dehors d'une erreur (ou alors je ne l'ai pas vue)