.htaccess + ErrorDocument 404 + extension PHP

Nouveau WRInaute
Salut,

J'ai un petit problème avec mon .htaccess, je voudrais rediriger les erreurs 404 vers ma page d'accueil.

Dans mon .htaccess j'ai mis :

ErrorDocument 404 http://deltaclub82.free.fr/

Donc quand je fais un test avec http://deltaclub82.free.fr/page_bidon.htm je suis bien redirigé vers ma page d'accueil. Tout va bien :D
Mais quand je refais le test avec http://deltaclub82.free.fr/page_bidon.php la redirection ne fonctionne plus 8O
Pourquoi avec l'extention php le redirection ne fonctionne plus ?

dites ? dites ? vous avez la réponse ? hein ? dites ? :cry:
 
WRInaute passionné
Salut,

Déjà une remarque: lors d'une redirection avec ErrorDocument il ne faut pas utiliser de redirection externe sinon ce ne sont pas les bonnes entêtes qui sont retournées.

Si tu vas sur le visualisateur d'entête du site ApocalX, tu verras que ton premier exemple retourne une entête 302 au lieu de 404. Un coup à se faire pénaliser pour contenu dupliqué...

Il faut donc mettre:
ErrorDocument 404 /mapage404.html
et non
ErrorDocument 404 http://domaine.tld/mauvaisexemple404.html

En ce qui concerne le fichier php qui n'est pas redirigé, tu as sans doute une règle de réécriture qui est appliquée avant le ErrorDocument et qui interfère avec celui-ci.
<edit>En l'occurence, une limitation de FREE</edit>

Dan
 
WRInaute discret
hetzeld a dit:
En ce qui concerne le fichier php qui n'est pas redirigé, tu as sans doute une règle de réécriture qui est appliquée avant le ErrorDocument et qui interfère avec celui-ci.

Lorsque je consulte mes stats sur free, je m'apercois que l'url des pages html et php est differente...

Pour un fichier html:
/folder/subfloder/page.html

Pour un fichier php:
h**p://proxyphp4.free.fr/login.free.fr/folder/subfloder/page.php

Il semble que Free utilise un serveur different pour executer le php. Pour cela, ils doivent effectivement utiliser une regle de redirection commune a tous les sites qui s'execute avant les commandes .htaccess

Olivier,
 
Nouveau WRInaute
merci pour vos réponses.
j'avais jeté un oeil rapide sur le forum pour voir si la réponse n'existait pas deja. Mais j'ai vite abandonné :oops:
 
WRInaute occasionnel
Plutôt que de renvoyer une page d'erreur 404 vers l'accueil du site, une autre alternative plutôt sympa est de la renvoyer sur le plan de site (s'il existe). Si une personne tombe sur une erreur 404 c'est qu'elle a tenté de trouver une page qui n'existe plus - bookmark périmé ou index google pas à jour - donc logiquement le mieux est de lui montrer quelles sont toutes les pages du site afin que la personne s'y retrouve ;)

C'est la méthode utilisée par WRI :p
 
Nouveau WRInaute
hetzeld a dit:
Déjà une remarque: lors d'une redirection avec ErrorDocument il ne faut pas utiliser de redirection externe sinon ce ne sont pas les bonnes entêtes qui sont retournées.

Si tu vas sur le visualisateur d'entête du site ApocalX, tu verras que ton premier exemple retourne une entête 302 au lieu de 404. Un coup à se faire pénaliser pour contenu dupliqué...

Il faut donc mettre:
ErrorDocument 404 /mapage404.html
et non
ErrorDocument 404 htétépé://domaine.tld/mauvaisexemple404.html
effectivement, la solution B ne fonctionne pas chez moi... mais j'ai cette config :

htétépé://prive.domain.com/ qui est entierement protegé par htaccess dès la racine

et je voudrais que lorsque qu'un utilisateur oublie son mot de passe par exemple, ça le redirige vers une page qui est sur le sous domaine www, genre :
htétépé://www.domain.com/prive/passoublie.php


pas possible ? :(
 
WRInaute passionné
Pour la personnalisation des errors 404 via .htaccess (ErrorDocument 404 /error404.html ) il y a le même souci chez 1and1.fr !
ça marche nikel sauf pour les fichiers portant l'extension .php !?

Si un membre hébergé chez 1and1 a trouvé une parade je l'en remercie d'avance ! :)

Je précise que j'ai fait des recherches (succinct il est vrai), mais la grande partie préconisent une redirection... N'importe nawak quoi ! :?
 
Discussions similaires
Haut