Plusieurs page erreur 404

Nouveau WRInaute
Bonjour

Je voulais savoir s'il était possible d'avoir plusieurs erreur 404 :

Mon client a un ancien site avec une partie client et une partie revendeur et je voudrais effectuer les redirections avec le nouveau site, cependant certaines pages n'ont plus leur place.

Serait-il possible que les erreurs 404 qui se trouve dans le dossier /client soit redirigé vers une page spéciale et les erreurs 404 qui se trouve dans le dossier /revendeur aussi ?

Je pense qu'il faut passer par un RewriteCond mais je n'y arrive pas.

Merci de votre réponse
Fabien
 
WRInaute passionné
Tiens j'ai jamais essayé les redirection 404 en fonction du répertoire mais il n'y a pas de raison que cela ne fontionne pas :


Dans ton répertoire /client, un htaccess contenant
Code:
ErrorDocument	404	/erreur_client.php

Dans ton répertoire /revendeur, un htaccess contenant
Code:
ErrorDocument	404	/erreur_revendeur.php

EDIT : merci de me donner un feedback, j'ai la flemme de tester ;)
 
WRInaute accro
Ou une seule directive "ErrorDocument 404" dans le répertoire racine, mais avec un traitement différent suivant l'URL de la page qui a été demandée.

Jean-Luc
 
Nouveau WRInaute
Merci à vous 2

Jean-Luc je veux bien que tu détailles ta solution c'est exactement ça que je cherchais.

Fabien
 
WRInaute accro
Je ne peux pas te donner un code php complet, mais en testant $REQUEST_URI et en faisant un include différent selon que l'URL indiquée est dans un répertoire ou un autre, on doit pouvoir y arriver sans trop de douleur. :wink:

Jean-Luc
 
WRInaute accro
Je vois ce que tu veux dire. Quelque chose comme ceci:
Code:
RewriteCond %{REQUEST_URI} ^/client/
ErrorDocument   404   /erreur_client.php
RewriteCond %{REQUEST_URI} ^/revendeur/
ErrorDocument   404   /erreur_revendeur.php

A tester ou à faire corriger par un expert. :D

Jean-Luc
 
Nouveau WRInaute
Merci

Je suis en train de tester ces lignes et ça n'a pas l'air de marcher.

Si un oeil expert pouvait y jeter un coup d'oeil ça serait super sympa.

merci
Fabien
 
WRInaute passionné
Je ne veux pas prêcher pour ma paroisse, car la solution de Jean Luc est très valable, mais as tu essayé ma soution ?
 
Nouveau WRInaute
Salut mr_go

Je n'en doute pas un instant que c'est une bonne solution (j'y avais pensé un instant) mais voilà ma problématique est la suivante.

L'ancien site de mon client comportait 20 dossiers et maintenant il y en a 2 avec une arborescence plus clair à l'intérieur de chaque dossier.

Ce ne me dit rien de créer 20 dossiers vides avec un fichier htaccess dedans à chaque fois, d'où l'idée de tout centraliser dans un fichier htaccess.

Fabien
 
WRInaute passionné
Ah oui c'est compréhensible alors. ;)

En revanche le rewritecond s'applique t il sur la clause ErrorDocument ?
Je ne suis pas certain... :(
 
Nouveau WRInaute
Comme je le disais le code que m'a fourni Jean-Luc n'a pas l'air de marcher, peut-être à cause de ça justement.
Si quelqu'un a une idée ?

Merci d'avance
Fabien
 
P
patsai
Guest
Pourquoi ne pas faire un bête fichier .htaccess à la racine qui pointerait vers une page html avec un lien vers l'accueil revendeur et un lien vers l'accueil visiteur

c pas top mais c mieux que rien ^^
 
WRInaute discret
Je crois que le plus simple, c'est quand même ça...
jeanluc a dit:
Je ne peux pas te donner un code php complet, mais en testant $REQUEST_URI et en faisant un include différent selon que l'URL indiquée est dans un répertoire ou un autre, on doit pouvoir y arriver sans trop de douleur. :wink:
Jean-Luc
 
WRInaute impliqué
Et oui c´est la solution:

htaccess avec ErrorDocument 404 /404.php

et 404.php avec:

$rep_client = array('lesrep','client',''...);
$rep_uri = split ("/", $_SERVER['REQUEST_URI']);
$rep_uri = $rep[0];
if (in_array ($rep_uri, $rep_client)) {
// Si l´erreur est coté client
}else{
//l´erreur est conté revendeur
}
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut