Help: je n' ai pas d'erreurs 404

Discussion dans 'URL Rewriting et .htaccess' créé par Tanuki, 5 Juin 2014.

  1. Tanuki
    Tanuki WRInaute occasionnel
    Inscrit:
    26 Avril 2006
    Messages:
    370
    J'aime reçus:
    0
    Bonjour,

    J'ai dans mon htaccess les règles suivantes:

    Code:
    RewriteCond %{HTTP_HOST} ^example.com$ 
    RewriteRule ^(.*)$   http://www.example.com/$1  [QSA,L,R=301]
    RewriteRule ^p[0-9]{0,4} / [QSA,L]
    RewriteRule ^[0-9]{4} / [QSA,L]
    RewriteRule ^[A-Z][a-z]+ / [QSA,L]
    Et il y a un truc qui ne fonctionne pas, dans le sens ou le serveur ne renvoi pas une 404 même si l'url est fausse.

    Par exemple pour une bonne url:
    -www.example.com/Categorie
    Si on tape n'importe quoi à la fin:
    -www.example.com/Categorie/nimportequoi
    -www.example.com/Categorie/nimportequoi.html
    -www.example.com/Categorie/nimportequoi.php
    ça envoi la même page alors que ça ne devrait pas.

    Je n'arrive pas à trouver comment faire.

    Merci de votre aide
     
  2. loubet
    loubet WRInaute impliqué
    Inscrit:
    19 Février 2003
    Messages:
    793
    J'aime reçus:
    0
    les régles ne fixent que ce qu'il doit y avoir au début, et indiquent que la fin importe peu, il faut donc ajouter un $ aux 3 dernières lignes, ainsi :
    RewriteRule ^[A-Z][a-z]+$ / [QSA,L]
     
  3. Tanuki
    Tanuki WRInaute occasionnel
    Inscrit:
    26 Avril 2006
    Messages:
    370
    J'aime reçus:
    0
    Merci loubet pour ton aide.

    Je viens de tester ta proposition:

    Code:
    RewriteRule ^p[0-9]{0,4}$ / [QSA,L]
    RewriteRule ^[0-9]{4}$ / [QSA,L]
    RewriteRule ^[A-Z][a-z]+$ / [QSA,L]
    - ça fonctionne en effet sur les url de categories comme dans mon exemple,
    sauf que
    - si la categorie est formée de deux mots séparés par un tiret ça sort une 404
    - ça mets tous les billets du blog en 404 :?

    J'ai ensuite essayé de ne rajouter un $ que sur la 3ème ligne

    Code:
    RewriteRule ^[A-Z][a-z]+$ / [QSA,L]
    La c'est ok pour les billets du blog mais reste le probème de la catégorie formée par plusieurs mots séparés par un tiret...

    Une idée??

    Merci encore
     
  4. loubet
    loubet WRInaute impliqué
    Inscrit:
    19 Février 2003
    Messages:
    793
    J'aime reçus:
    0
    RewriteRule ^[A-Z][a-z-]+$ / [QSA,L]

    exemple d'une url correcte d'un billet ?
    exemple d'une url incorrecte d'un billet ?
     
  5. Tanuki
    Tanuki WRInaute occasionnel
    Inscrit:
    26 Avril 2006
    Messages:
    370
    J'aime reçus:
    0
    Ta dernière proposition fonctionne!

    Merci Loubet, je cherchais depuis des mois...

    Pour info les url des billets:
    -www.example.com/2013/12/11/37-un-beau-billet

    Une dernière chose me questionne: le soucis est réglé si on met un slash:
    -www.example.com/Categorie/nimportequoi renvoi bien une 404
    mais persiste lorsqu'on ajoute un ? et du texte
    -www.example.com/Categorie?nimportequoi renvoi la page
     
  6. loubet
    loubet WRInaute impliqué
    Inscrit:
    19 Février 2003
    Messages:
    793
    J'aime reçus:
    0
    -www.example.com/2013un-beau-billet va passer
    si toutes les urls sont du style indiqué, alors quelque chose du style
    ^[0-9][0-9][0-9][0-9]\/[0-9][0-9]\/[0-9][0-9]\/[0-9]+\-
    sera plus restrictif

    pour les paramètres
    RewriteCond %{REQUEST_URI} ^[A-Z][a-z-]+$
    RewriteCond %{QUERY_STRING} ^$
    RewriteRule (.*) / [QSA,L]
     
  7. Tanuki
    Tanuki WRInaute occasionnel
    Inscrit:
    26 Avril 2006
    Messages:
    370
    J'aime reçus:
    0
    Bonjour Loubet,

    Voilà où j'en suis:

    Dans le code j'ai ça:

    Code:
    RewriteRule ^p[0-9]{0,4} / [QSA,L]
    RewriteRule ^[0-9][0-9][0-9][0-9]\/[0-9][0-9]\/[0-9][0-9]\/[0-9]+\- / [QSA,L]
    RewriteRule ^[A-Z][a-z-]+$ / [QSA,L]
    RewriteCond %{REQUEST_URI} ^[A-Z][a-z-]+$
    RewriteCond %{QUERY_STRING} ^$
    RewriteRule (.*) / [QSA,L]
    Et le résultat sur les "mauvaises" url:

    example.com/aa -> 404
    example.com/?aa -> 200

    example.com/Categorie/aa -> 404
    example.com/Categorie?aa -> 200

    example.com/2013/06/19/17-un-billet/aa -> 200
    example.com/2013/06/19/17-un-billet?aa -> 200
     
  8. Tanuki
    Tanuki WRInaute occasionnel
    Inscrit:
    26 Avril 2006
    Messages:
    370
    J'aime reçus:
    0
    + Edit tardif:
    Je viens de me rendre compte que du coup ça bloque la pagination sur les catégories:

    -www.example.com/Categorie/p2 -> 404 au lieu de 200

    Si tu arrives à me démêler tout ça je t'envoie le Champagne :wink:
     
  9. loubet
    loubet WRInaute impliqué
    Inscrit:
    19 Février 2003
    Messages:
    793
    J'aime reçus:
    0
    RewriteRule ^[A-Z][a-z-]+$ / [QSA,L]
    RewriteCond %{REQUEST_URI} ^[A-Z][a-z-]+$
    RewriteCond %{QUERY_STRING} ^$
    RewriteRule (.*) / [QSA,L]

    par
    RewriteCond %{REQUEST_URI} ^[A-Z][a-z-]+(\/p[0-9]+)?$
    RewriteCond %{QUERY_STRING} ^$
    RewriteRule (.*) / [QSA,L]
     
  10. Tanuki
    Tanuki WRInaute occasionnel
    Inscrit:
    26 Avril 2006
    Messages:
    370
    J'aime reçus:
    0
    Hello,

    si je met ça:

    Code:
    RewriteRule ^p[0-9]{0,4} / [QSA,L]
    RewriteRule ^[0-9][0-9][0-9][0-9]\/[0-9][0-9]\/[0-9][0-9]\/[0-9]+\- / [QSA,L]
    RewriteCond %{REQUEST_URI} ^[A-Z][a-z-]+(\/p[0-9]+)?$
    RewriteCond %{QUERY_STRING} ^$
    RewriteRule (.*) / [QSA,L]
    les pages catégories sont en 404

    j'ai essayé ça:

    Code:
    RewriteRule ^p[0-9]{0,4} / [QSA,L]
    RewriteRule ^[0-9][0-9][0-9][0-9]\/[0-9][0-9]\/[0-9][0-9]\/[0-9]+\- / [QSA,L]
    RewriteRule ^[A-Z][a-z-]+$ / [QSA,L]
    RewriteCond %{REQUEST_URI} ^[A-Z][a-z-]+(\/p[0-9]+)?$
    RewriteCond %{QUERY_STRING} ^$
    RewriteRule (.*) / [QSA,L]
    et je retrouve la situation précédente citée dans mon billet ce matin
     
  11. Tanuki
    Tanuki WRInaute occasionnel
    Inscrit:
    26 Avril 2006
    Messages:
    370
    J'aime reçus:
    0
    Bonjour Loubet,

    Plus le temps de chercher? Plus d'idées? On y était presque!! :wink:

    A tout hasard si tu as du courage voilà où j'en suis.

    J'ai ça:

    Code:
    RewriteRule ^p[0-9]{0,4} / [QSA,L]
    RewriteRule ^[0-9][0-9][0-9][0-9]\/[0-9][0-9]\/[0-9][0-9]\/[0-9]+\- / [QSA,L]
    RewriteRule ^[A-Z][a-z-]+(\/p[0-9]+)?$ / [QSA,L]
    Qui fonctionne presque à merveille:
    - si on ajoute /nimportequoi à une url de catégorie on a une 404
    - par contre si on l'ajoute à une url de billet on a une 200

    Et puis j'ai ça:

    Code:
    RewriteCond %{REQUEST_URI} ^[A-Z][a-z-]+(\/p[0-9]+)?$
    RewriteCond %{QUERY_STRING} ^$
    RewriteRule (.*) / [QSA,L]
    qui a priori ne fonctionne pas:
    si on ajoute ?nimportequoi à une url de cat ou de billet ça renvoi un code 200...
     
Chargement...
Similar Threads - erreurs 404 Forum Date
[htaccess] Rediriger toutes les erreurs 404 vers ma home Crawl et indexation Google, sitemaps 30 Janvier 2019
erreurs 404 pour produits supprimés restent dans search console Problèmes de référencement spécifiques à vos sites 2 Octobre 2018
Milliers d'erreurs 404 sur site de petites annonces Débuter en référencement 25 Septembre 2018
Erreurs 404 sur des urls de type /fr/fr/, /en/en/ ou /de/de/ Crawl et indexation Google, sitemaps 8 Juin 2018
Urls tronqués dans Search Console - Erreurs 404 Crawl et indexation Google, sitemaps 17 Janvier 2018
Corriger ou rediriger les erreurs 404 ? Débuter en référencement 19 Juillet 2017
Changement de forum et erreurs 404 : bonne pratique? URL Rewriting et .htaccess 26 Novembre 2016
Erreurs 404 dont la provenance est inconnue Problèmes de référencement spécifiques à vos sites 21 Octobre 2016
Nombreuses erreurs d'exploitations 404 Netlinking, backlinks, liens et redirections 15 Septembre 2016
GWT : Erreurs 404 signalées incompréhensibles Crawl et indexation Google, sitemaps 24 Août 2016
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice