Aller au contenu

Sujets conseillés

Bonsoir,

Tout est dans le titre : je n'arrive pas à gérer les 404 ou les 500 avec mon hébergeur 1and1.

Sur leur site, on trouve ceci (http://faq.1and1.fr/hebergements/htaccess/10.html ) :

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule (.*) /errordocument.html

ErrorDocument 400 /errordocument.html

ErrorDocument 401 /errordocument.html

ErrorDocument 403 /errordocument.html

ErrorDocument 404 /errordocument.html

ErrorDocument 500 /errordocument.html

RemoveType x-mapp-php4 .html

J'ai mis ceci :

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule (.*) /404.php

ErrorDocument 400 /errordocument.html

ErrorDocument 401 /errordocument.html

ErrorDocument 403 /errordocument.html

ErrorDocument 404 /404.php

ErrorDocument 500 /errordocument.html

RemoveType x-mapp-php4 .html

J'ai essayé pas mal de combinaisons mais rien y fait, j'ai sois une redirection de TOUTES les pages, soit une erreur interne....

Merci d'avance

Portekoi

Lien vers le commentaire
Partager sur d’autres sites

RewriteRule (.*) /errordocument.html

Si je ne suis pas trop fatigué, cette ligne veut dire de transformer n'importe quelle page en /errordocument.html ? Ça expliquerait pourquoi toutes les pages sont redirigées en erreur...

Lien vers le commentaire
Partager sur d’autres sites

Salut,

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) /errordocument.html

théoriquement oui ça transformerais n'importe quelle page, sauf que là il y a quand même des conditions

si le fichier demandé n'est pas un fichier existant physiquement sur le disque (-f)

et que le fichier demandé n'est pas un dossier existant sur le disque (-d) alors réécrit l'url vers /errordocument.html

Modifié par Kent
Lien vers le commentaire
Partager sur d’autres sites

Voilà mon .htaccess


RewriteEngine On
RewriteCond %{HTTP_HOST} ^monsite.fr$
RewriteRule ^(.*) http://www.monsite.fr/$1 [QSA,L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) /404.php
ErrorDocument 400 /errordocument.html
ErrorDocument 401 /errordocument.html
ErrorDocument 403 /errordocument.html
ErrorDocument 404 /404.php
ErrorDocument 500 /errordocument.html
RemoveType x-mapp-php4 .html
AddType x-mapp-php5 .php

Et j'ai essayé ca aussi mais marche pas non plus...


RewriteEngine On
RewriteCond %{HTTP_HOST} ^monsite.fr$
RewriteRule ^(.*) http://www.monsite.fr/$1 [QSA,L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) /404.html
ErrorDocument 400 /errordocument.html
ErrorDocument 401 /errordocument.html
ErrorDocument 403 /errordocument.html
ErrorDocument 404 /404.php
ErrorDocument 500 /errordocument.html
RemoveType x-mapp-php4 .html
AddType x-mapp-php5 .php

Une idée?

Si je mets ceci :
/>http://www.monsite.fr/ddd.ph

La 404 fonctionne... mais si je mets ceci :
/>http://www.monsite.fr/ddd.php

marche plus... :(

Merci

Lien vers le commentaire
Partager sur d’autres sites

j'ai trouvé mais je pensais l'avoir testé :


RewriteEngine On
RewriteCond %{HTTP_HOST} ^monsite.fr$
RewriteRule ^(.*) http://www.monsite.fr/$1 [QSA,L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) /404.php

ErrorDocument 400 /errordocument.html
ErrorDocument 401 /errordocument.html
ErrorDocument 403 /errordocument.html
ErrorDocument 404 /404.php
ErrorDocument 500 /errordocument.html

AddType x-mapp-php5 .php

Lien vers le commentaire
Partager sur d’autres sites

Je ne comprends pas l'intérêt de ces lignes

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) /404.php

Là, on dit : pour tout ce qui n'est pas un fichier existant, ou une directory existante, on affiche la page 404...

:wacko:

Donc on affiche une page 404 avec un code retour 200...

Les lignes correctes me semblent être les lignes "errorDocument", pas besoin de rewriting pour traiter les erreurs.

Non ?

Lien vers le commentaire
Partager sur d’autres sites

Re,

C'est 1and1 qui force à faire ainsi.

Et je dois refaire mes tests, mais cela ne fonctionne pas avec un appel en thickbox.

Je pige pas en quoi cela pourrait jouer sur l'url mais bon...

Je dois refaire mes tests ce soir, je vous tiens au courant.

Portekoi

Lien vers le commentaire
Partager sur d’autres sites

  • 4 semaines plus tard...

Bon, j'ai trouvé d'où cela provenait : j'avais mis une majuscule dans le lien 'page.Php' alors que son nom était 'page.php'

Que dois je ajouter dans mon .htaccess pour ne pas tenir compte de la Case ?

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...