Aller au contenu

Sujets conseillés

Posté

Bonjour à tous,

Un problème dont je ne connais l'origine m'empêche de faire des redirections permanent ... :| :| :|

J'ai insérer dans un dossier un .htaccess (que j'ai créé sous bloc note puis upload et enfin nommé .htaccess).

Il est dans le fichier : cheloniophilie.com/Fiches/

RedirectPermanent mauremysleprosa.html http://www.cheloniophilie.com/Fiches/Mauremys-leprosa.php
RedirectPermanent Geochelone.php http://www.cheloniophilie.com/Fiches/Stigmochelys-pardalis.php

Pourquoi il veut pas faire effet ?
/>http://www.cheloniophilie.com/Fiches/Geochelone.php m'affiche une 404 et non une redirection :| :| :|

Posté

Un truc bizarre, sur ton site, c'est qu'il ne renvoie en réalité jamais d'erreurs 404. Quand une page n'est pas trouvée, le serveur renvoie un code 302 (redirection temporaire) et redirige vers la page dont le titre est "Erreur 404".

Il serait préférable qu'en cas de page non trouvée, le serveur renvoie vraiment une erreur 404 !

Tu peux visualiser tout ça avec l'outil analyseur d'entêtes : http://www.webmaster-hub.com/outils/http-viewer.php

Posté

Un truc bizarre, sur ton site, c'est qu'il ne renvoie en réalité jamais d'erreurs 404. Quand une page n'est pas trouvée, le serveur renvoie un code 302 (redirection temporaire) et redirige vers la page dont le titre est "Erreur 404".

Il serait préférable qu'en cas de page non trouvée, le serveur renvoie vraiment une erreur 404 !

Tu peux visualiser tout ça avec l'outil analyseur d'entêtes : http://www.webmaster-hub.com/outils/http-viewer.php

Je ne comprends pas bien ce que tu essaies de me dire ?

Quand cela ne fonctionne pas ... j'ai une page erreur 404.php et les visiteurs tombent dessus ... :unsure:

PS le problème persiste malgré le "/"

Posté

Je ne comprends pas bien ce que tu essaies de me dire ?

Quand cela ne fonctionne pas ... j'ai une page erreur 404.php et les visiteurs tombent dessus ... :unsure:

Ta page a pour titre "erreur 404", mais le serveur, lui, ne renvoie pas une erreur 404.

Tu dois utiliser cet outil pour le visualiser : http://www.webmaster-hub.com/pages/outils/headers

Dans cet outil, tape par exemple une page imaginaire du site google, disons : http://www.google.fr/lsqfjjk

En première ligne du résultat, tu as :

HTTP/1.0 404 Not Found

Voila ce qu'il faut obtenir avec une page qui n'existe pas.

Maintenant, fais l'essai avec une page imaginaire de ton site :http://www.cheloniophilie.com/qsdfsdf

Tu obtiens deux blocs de résultats, le premier est :

HTTP/1.1 302 Found

...

Location: http://www.cheloniophilie.com/Erreurs/404.php

C'est à dire une redirection temporaire vers cette page 404.php, qui correspond au deuxième résultat :

HTTP/1.1 200 OK

Donc une redirection temporaire vers la page 404.php : c'est très différent d'une erreur 404 !

Et c'est ce qui se produit avec les deux pages que tu cites en exemple dans ton premier message. Si ça se trouve, tu as mis en place une règle bizarre de redirection 302 dans ton .htaccess pour les pages non trouvées, et c'est à cause de ça que tes redirections permanentes ne sont pas lues (simple hypothèse).

Posté

Voilà le .htaccess général

AddType application/x-httpd-php5 .php .php3

ErrorDocument 404 http://www.cheloniophilie.com/Erreurs/404.php

RewriteEngine On

RewriteCond %{HTTP_HOST} ^cheloniophilie.com$

RewriteRule ^(.*) http://www.cheloniophilie.com/$1 [QSA,L,R=301]

RewriteEngine On
RewriteCond %{THE_REQUEST} ^(GET|POST|HEAD)\ (/.*)?/index.(htm|html|php|asp|shtml)
RewriteRule ^(.*)index.(htm|html|php|asp|shtml)$ /$1 [R=301,L]
ErrorDocument 500 http://www.www.cheloniophilie.com/Erreurs/404.php

Posté

Il suffit de remplacer ta ligne ErrorDocument par :

ErrorDocument 404 /Erreurs/404.php

Parce que toute URL externe (commençant par http://) donnera une entête 200 au lieu de 404.

(idem pour le ErrorDocument 500)

Et pour info, dans ta dernière règle de réécriture, il faut une URL complète en second membre vu que tu envoies une entête 301 (Redirect Permanent) ;)

RewriteRule ^(.*)index.(htm|html|php|asp|shtml)$ http://www.cheloniophilie.com/$1 [R=301,L]

Tu as aussi 2 fois RewriteEngine On dans ton fichier !

Il devrait ressembler à ceci :


AddType application/x-httpd-php5 .php .php3

ErrorDocument 404 /Erreurs/404.php
ErrorDocument 500 /Erreurs/404.php # tu es certain du nom du fichier ?

RewriteEngine On

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

RewriteCond %{THE_REQUEST} ^(GET|POST|HEAD)\ (/.*)?/index.(htm|html|php|asp|shtml)
RewriteRule ^(.*)index.(htm|html|php|asp|shtml)$ http://www.cheloniophilie.com/$1 [R=301,L]

Posté

Bonsoir à tous,

Tout d'abord merci pour vos correction !!! Effectivement, je mets les erreurs 500 sur la page 404 ... (bah les visiteurs s'en foutent) !!!

Sinon je viens de faire la modification ... cela ne marche toujours pas :
/>http://www.cheloniophilie.com/Fiches/Geochelone.php

Posté

Bonjour,

As-tu essayé ceci ?

RedirectPermanent /Fiches/mauremysleprosa.html http://www.cheloniophilie.com/Fiches/Mauremys-leprosa.php
RedirectPermanent /Fiches/Geochelone.php http://www.cheloniophilie.com/Fiches/Stigmochelys-pardalis.php

Jean-Luc

Posté

Bonjour,

As-tu essayé ceci ?

RedirectPermanent /Fiches/mauremysleprosa.html http://www.cheloniophilie.com/Fiches/Mauremys-leprosa.php
RedirectPermanent /Fiches/Geochelone.php http://www.cheloniophilie.com/Fiches/Stigmochelys-pardalis.php

Jean-Luc

Merci Jeanluc !!! problème résolu :thumbsup: :thumbsup: :thumbsup: :thumbsup:

Veuillez vous connecter pour commenter

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



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