web-dev-qa-db-fra.com

Recherchez les URL qui renvoient ma page d'erreur 404

J'ai créé une page d'erreur personnalisée 404 appelée error_404.html

Dans mon .htaccess j'ai inséré:

ErrorDocument 404 /error_404.html

Afin de contrôler/corriger les erreurs 404 de mon site Web, je voudrais savoir quelle demande d'URL renvoie cette page.

Existe-t-il un moyen que je puisse vérifier quelle demande d'URL ou de journal renvoie la page error_404.html?

4
web-tiki

Vous n'avez pas besoin d'un document d'erreur personnalisé pour surveiller les 404 sur votre site - si c'est l'exigence. Toutes les informations sont dans votre journal d'accès au serveur. Le code de réponse HTTP (c'est-à-dire 404, 403, 200, etc.) et l'URL de la demande qui a généré cette réponse.

Le document d'erreur personnalisé est un moyen agréable de fournir une réponse significative aux utilisateurs.

Vous pouvez également enregistrer votre site avec Google Webmaster Tools (GWT). Cela produira un rapport de toutes les URL qu'il a tenté d'explorer (c.-à-d. Les URL qu'il a pu trouver) ayant généré un 404.

N'oubliez pas que votre journal des accès signalera beaucoup plus de 404 que GWT, car il existe de nombreux robots malveillants qui recherchent des vulnérabilités qui tenteront de demander toutes sortes d'URL qui pourraient ne pas être liées à votre site. Ignorez-les ou bloquez les robots s'ils sont persistants.

5
MrWhite

Je ne crois pas. N'utilisez pas ErrorDocument comme vous l'avez spécifié.

Voici un site de ressources qui semble avoir quelques réponses.

http://www.askapache.com/htaccess/htaccess.html#Custom_ErrorDocuments

Faites défiler la liste et vous trouverez cet exemple. Si ce n'est pas exactement ce que vous voulez, vous pouvez le modifier.

### ALTERNATATIVE TO USING ERRORDOCUMENT
# http://www.htaccesselite.com/d/htaccess-errordocument-examples-vt11.html
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ /error.php [L]

Vous pouvez également consulter pour plus d'informations:

http://www.askapache.com/htaccess/security-with-htaccess.html#errordocument-usage-in-htaccess

3
closetnoc

Cela fonctionne: en émulant ErrorDocuments avec mod_rewrite .

ErrorDocument 404 /404.html Redirect 404 /404 RewriteCond %{ENV:REDIRECT_STATUS} !=404 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .* /404 [L]

1
AskApache