Longueur de .htaccess à ne pas dépasser ?

Discussion dans 'URL Rewriting et .htaccess' créé par OTP, 3 Juillet 2007.

Tags:
  1. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 917
    J'aime reçus:
    1
    Lut'

    Il y a t'il une limite sur le nombre de lignes d'un .htaccess ?
    Ou plutôt des soucis à prévoir s'il s'accroit trop ?

    Ca peut ralentir un mutu ? ou la navigation ?

    Michaël
     
  2. e-kiwi
    e-kiwi WRInaute accro
    Inscrit:
    23 Décembre 2003
    Messages:
    13 314
    J'aime reçus:
    1
    tu parles en centaine, milliers, plus de lignes ?
     
  3. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 917
    J'aime reçus:
    1
    Non, j'en suis en dizaines...
    Au pire 100 ou 200 selon ce que je vais faire.
    Pas de souci donc ?
     
  4. DreamJap
    DreamJap WRInaute discret
    Inscrit:
    6 Mai 2005
    Messages:
    87
    J'aime reçus:
    0
    D'après des tests effectués personnellement, cela ralenti (de combien, il faut voir ^^ ). Mais sache que cela un impact car le .htaccess est lu à chaque chargement de fichier (oui même les images et consort...).

    Je pense que 200 lignes, ne devrait pas poser de problème mais vérifie quand même, en mettant le htaccess dans un répertoire.
     
  5. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 917
    J'aime reçus:
    1
    C'est à dire ?
     
  6. amri-referencement
    amri-referencement WRInaute occasionnel
    Inscrit:
    4 Janvier 2007
    Messages:
    457
    J'aime reçus:
    0
    Bonsoir,

    Non pour répondre à ta 1ère question.

    Y'a une limite sur le poids

    Ca peut en effet, ralentir la vitesse de charge de ton site.

    Bonne soirée

    Fanny AMRI
     
  7. DreamJap
    DreamJap WRInaute discret
    Inscrit:
    6 Mai 2005
    Messages:
    87
    J'aime reçus:
    0
    1. Crée un repertoire "test"
    2. Tu y met un htaccess avec 200 lignes que tu aimerais faire marcher
    3. Tu y met un fichier index.html avec des images par exemple
    4. Tu envoi des requêtes et tu regardes si cela ralenti ou si c'est négligeable par rapport au site lui-même.

    Je te dis ça car tu semble le faire sur un mutu, sur un dédié, tu aurais pu voir plus facilement :)

    P.S. : Et aussi, on fait ça dans un repertoire comme ça le htaccess ne concerne que le repertoire (et les sous-repertoire) et pas l'ensemble du site.
     
  8. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 917
    J'aime reçus:
    1
    Ok, merci.
    Avec cette dernière précision, je comprends mieux.
     
  9. awelty
    awelty Nouveau WRInaute
    Inscrit:
    27 Février 2006
    Messages:
    26
    J'aime reçus:
    0
    Je rebondis sur ce message, comment faire si on est obligé d'avoir plusieurs milliers d'instructions à son htaccess ?

    Impossible ??

    8O
     
  10. bigjet
    bigjet WRInaute discret
    Inscrit:
    21 Novembre 2004
    Messages:
    177
    J'aime reçus:
    0
    Tu mets tes instructions dans le fichier de configuration du serveur http (httpd.conf).
     
  11. awelty
    awelty Nouveau WRInaute
    Inscrit:
    27 Février 2006
    Messages:
    26
    J'aime reçus:
    0
    Merci de ta réponse, mais qu'est ce qui ferait que ca chargerait plus rapidement (quel différence ?) ?
     
  12. KOogar
    KOogar WRInaute accro
    Inscrit:
    16 Novembre 2004
    Messages:
    4 160
    J'aime reçus:
    1
    tu peux rewriter des urls a partir du httpd.conf ??
     
  13. awelty
    awelty Nouveau WRInaute
    Inscrit:
    27 Février 2006
    Messages:
    26
    J'aime reçus:
    0
    Oui pourquoi pas si ca permet de ne pas saturer mon serveur

    Car là, un htaccess d'environ 500 lignes ca fait ramer apache à mort.


    Le fait de faire le rewrite depuis http.conf permet d'éviter cela ?

    Si oui, comment ça se fait ?
     
  14. KOogar
    KOogar WRInaute accro
    Inscrit:
    16 Novembre 2004
    Messages:
    4 160
    J'aime reçus:
    1
    On fait pas, le moteur rewrite c'est une chose, la config en est une autre.. Par contre en effet on doit pouvoir rentrer certaine instructions directement dans le config. J'aimerais bien en savoir +

    Ca etant, je sais pas comment t'ecris tes regles, mais 500 lignes c'est enorme. Normal que ca rame, 500 instructions en cache, c'est du lourd!
     
  15. Ohax
    Ohax WRInaute accro
    Inscrit:
    5 Juillet 2004
    Messages:
    4 934
    J'aime reçus:
    0
    Toutes les instructions ne consomment pas toutes autant.

    Tout dépend de la puissance machine que tu as de disponible.

    Pas de réelle limite donc...
     
  16. awelty
    awelty Nouveau WRInaute
    Inscrit:
    27 Février 2006
    Messages:
    26
    J'aime reçus:
    0
    Je suis pourtant en cluster avec deux serveurs pour apache...

    La grande partie de mon htaccess c'est 1 REWRITECOND suivi d'un REWRITERULE (etc.).

    Il y en a 510 comme ça et une 50aine d'instructions REWRITE RULE ensuite...

    En fait ces 1020 instructions (510x2) sont générés via un programme php qui édite le fichier htaccess.

    Voici d'ailleurs un exemple de mon ht access (qui se repete apres) au cas où, si vous détectiez un probleme... :
    Code:
    RewriteCond %{HTTP_HOST} domaine1.com [NC]
    RewriteRule ^(.*).(png|gif|jpe?g)$  http://www.site.com/login1/$1.$2  [L]
    RewriteCond %{HTTP_HOST} domaine1.com [NC]
    RewriteRule   ^$   site/index.php?login=login1  [L]
    RewriteCond %{HTTP_HOST} domaine1.com [NC]
    RewriteRule ^(.*)$    login1/$1
    
    RewriteCond %{HTTP_HOST} domaine2.org [NC]
    RewriteRule ^(.*).(png|gif|jpe?g)$  http://www.site.com/login2/$1.$2  [L]
    RewriteCond %{HTTP_HOST} domaine2.org [NC]
    RewriteRule   ^$   site/index.php?login=login2  [L]
    RewriteCond %{HTTP_HOST} domaine2.org [NC]
    RewriteRule ^(.*)$    login2/$1
    
    RewriteCond %{HTTP_HOST} domaine3.net [NC]
    RewriteRule ^(.*).(png|gif|jpe?g)$  http://www.site.com/login3/$1.$2  [L]
    RewriteCond %{HTTP_HOST} domaine3.net [NC]
    RewriteRule   ^$   site/index.php?login=login3  [L]
    RewriteCond %{HTTP_HOST} domaine3.net [NC]
    RewriteRule ^(.*)$    login3/$1
    Je reste intrigué par la réponse de bigjet de mettre les instructions dans le http.conf. Je ne m'y connais pas trop en config apache, je ne vois pas ce que ca change...

    Bref si quelqu'un a une idée, il est le bienvenu car là je patauge dans la semoule....
     
  17. KOogar
    KOogar WRInaute accro
    Inscrit:
    16 Novembre 2004
    Messages:
    4 160
    J'aime reçus:
    1
    Sur un mutualisé a 20 euros par an, ca posera des problemes... mais tu as raison, avec de la tune on peut tout avoir... c'est clair.
     
  18. awelty
    awelty Nouveau WRInaute
    Inscrit:
    27 Février 2006
    Messages:
    26
    J'aime reçus:
    0
    Ptit up car j'aimerais en savoir plus là dessus :?: :lol:

     
  19. Klm
    Klm WRInaute discret
    Inscrit:
    13 Mars 2009
    Messages:
    78
    J'aime reçus:
    0
    Bonsoir,

    Un moment que j'étais pas venu ici mais une question revient régulièrement à ce sujet. Mon .htaccess fait 1310 lignes à l'heure actuelle pour un poids de 90.3 KO. Je ne trouve pas qu'il y ait de lenteur particulière à l'ouverture des pages sachant qu'il a autant de lignes depuis plusieurs mois ; années. Ma question est donc de savoir s'il y a un réel problème et qu'il faut que je réagisse vite (ou non). Je réécris manuellement chaque url d'où ce nombre important.

    Merci par avance.
     
  20. baud74
    baud74 WRInaute impliqué
    Inscrit:
    21 Juillet 2014
    Messages:
    592
    J'aime reçus:
    0
    tu peux tester de supprimer temporairement l'immense majorité de ces lignes, pour voir si tu gagnes quelques millièmes sur le temps de génération des pages.
    si rien ne change, alors pas de raison de s'inquiéter.
     
  21. KOogar
    KOogar WRInaute accro
    Inscrit:
    16 Novembre 2004
    Messages:
    4 160
    J'aime reçus:
    1
    c'est a toi de voir, car c'est toi qui connais et maitrise ton environnement

    En résumé, la vitesse d'execution dépend:
    1. de la vitesse du serveur
    2. du contenu du fichier .htaccess
    ce sont les conditions (RewriteCond) qui sont gourmandes en ressources (loop) ainsi que des regex non précis: (.*)
    si il n'y a que des redirections 301 (Redirect permanent) on parle ici de quelques microsecondes pour des milliers de requêtes
    3. de l'emplacement et du nombre de fichiers .htaccess, si il y en a qu'1 a la racine, le serveur n'ira pas a chaque requête explorer les répertoires + être obligé d'accéder au disque pour lire le fichier .htaccess

    pour plus de performances, il est conseillé de mettre les règles directement dans le fichier conf d'Apache (apache2.conf / httpd.conf) et de mettre AllowOverride a None, ca divise par 2 (en moyenne) le nombres de requêtes
     
  22. elji
    elji WRInaute occasionnel
    Inscrit:
    6 Juin 2009
    Messages:
    259
    J'aime reçus:
    5
    Je relance cette discussion, c'est mon problème du jour.

    J'ai aujourd'hui un fichier .htaccess de 279 lignes qui pèse 21 ko. Je projette d'y ajouter, hmm hmm, 5078 redirections 301.
    J'ai trouvé cette vidéo de Matt Cutts
    https://www.youtube.com/watch?v=r1lVPrYoBkA
    qui dit qu'on peut avoir des centaines de milliers de 301, et que c'est OK pour Google, mais ce qui m'ennuie est que je vais considérablement alourdir mon .htaccess

    Mais y t-il une autre solution ?
     
  23. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    8 658
    J'aime reçus:
    196
    - Fichier Excel 2 colonnes: old, new, export en CSV, fgetcsv
    - Array PHP
    - Base de données
     
  24. Marie-Aude
    Marie-Aude WRInaute accro
    Inscrit:
    5 Juin 2006
    Messages:
    16 481
    J'aime reçus:
    2
    Traites les en php, pas dans le htaccess
    ou alors scinde les fichiers par sous répertoire
     
  25. elji
    elji WRInaute occasionnel
    Inscrit:
    6 Juin 2009
    Messages:
    259
    J'aime reçus:
    5
    C'est ce que j'essaie de faire, mettre mes 301 dans un fichier à part. Je cherche la syntaxe pour créer ce fichier, en CSV, cela me parait bien, et l'appeler ensuite à partir du .htaccess. Je regarde fgetcsv...

    Ils sont tous dans le même répertoire, qui contient aussi des sous-répertoires avec des fichiers appelés souvent...

    Merci de ces réponses.
     
  26. Marie-Aude
    Marie-Aude WRInaute accro
    Inscrit:
    5 Juin 2006
    Messages:
    16 481
    J'aime reçus:
    2
    Tu veux dire que tu as actuellement 5078 urls rattachées directement à la racine de ton site ?

    Je crois que tu n'as pas compris ce que je voulais dire.

    Imagine que tu aies une url
    example.com/categorie1/ur-detaillée où categorie1 est un répertoire virtuel. Si tu créés un répertoire physique, tu peux très bien y mettre un petit .htaccess qui ne comprendra que les redirections pour categorie1 et donc qui ne surchargera pas ton serveur.

    Par contre, si effectivement tu n'as pas de répertoire virtuel, you are in the shit ^^

    La solution de traiter les redirections en php à partir de la base de données est beaucoup plus simple que d'appeler un fichier à partir du htaccess . De plus, si tu es sur un mutu, tu ne peux pas utiliser, en général, les fonctionnalités apache correspondantes
     
  27. elji
    elji WRInaute occasionnel
    Inscrit:
    6 Juin 2009
    Messages:
    259
    J'aime reçus:
    5
    Oui, il faut etre précis. J'ai aujourd'hui 5078 pages avec des URLs de type :

    Code:
    domaine.com/monrepertoire/mapage.php?mavariable=mavaleur
    que je veux faire pointer vers des URLs de type :

    Code:
    domaine.com/id-unique-titre-de-ma-page
    C'est hyper facile avec des 301, il y a juste que la liste serait lourde.

    Et oui, il y a d'autres pages, non dynamiques, dans /monrepertoire alors je ne peux faire n'importe quoi.
     
  28. elji
    elji WRInaute occasionnel
    Inscrit:
    6 Juin 2009
    Messages:
    259
    J'aime reçus:
    5
    Marie-Aude, merci beaucoup. Merci mille fois.

    Tu m'as appris un truc, c'est tout bête, mais je ne connaissais qu'une seul méthode pour faire un 301 : par le .htaccess. Maintenant que je sais qu'on peut aussi les faire en PHP, mon problème est résolu. Ouais, j'avais pas compris la première fois que je t'avais lu...

    Mon seul petit souci est que la redirection 301 sera sur toutes les pages, puisque si elle est d'une page dynamique à une autre page dynamique, le template est le même, mais je dois parvenir à arranger cela.

    Pour revenir au .htaccess, je vais optimiser le mien, et réduire sa taille en créant par ailleurs des pages PHP avec des 301. Ayant lu beaucoup d'articles négatifs sur les gros .htaccess hier, cela devrait me permettre de gagner un poil de rapidité.
     
  29. Marie-Aude
    Marie-Aude WRInaute accro
    Inscrit:
    5 Juin 2006
    Messages:
    16 481
    J'aime reçus:
    2
    ^^ c'est un peu complexe quand on découvre :)

    Ton script php intervient tout en haut. Il regarde l'url "appelée" et va chercher dans la base ce qu'il doit faire, pour aller chercher la nouvelle url. Le template est affecté à la nouvelle url ... :)
     
  30. elji
    elji WRInaute occasionnel
    Inscrit:
    6 Juin 2009
    Messages:
    259
    J'aime reçus:
    5
    Sans etre particulièrement complexe, je pense que connaissant une méthode de faire des 301, je n'en avais jamais cherché une autre. Je n'avais même jamais pensé à en chercher une autre. J'imagine aussi que webrankinfo aurait pu publier un nouvel article sur les 301, mais puisque je sais les faire, je l'aurais même pas lu... Il faut parfois chercher à renouveler ses connaissances.
     
  31. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    8 658
    J'aime reçus:
    196
    En informatique et encore plus dans le développement Web: tout le temps !
     
  32. elji
    elji WRInaute occasionnel
    Inscrit:
    6 Juin 2009
    Messages:
    259
    J'aime reçus:
    5
    Oui, très vrai. C'est ce que je fais normalement, mais pour les 301, et sans doute d'autres petites choses que je n'ai pas à l'esprit en ce moment, je n'y avais pas pensé.

    Marie-Aude m'a donné une bonne piqure de rappel.
     
Chargement...
Similar Threads - Longueur htaccess dépasser Forum Date
Longueur du htaccess > trop de redir ? URL Rewriting et .htaccess 6 Novembre 2013
Longueur maximale de .htaccess Débuter en référencement 22 Octobre 2012
Alexa, une longueur d'avance? Référencement Google 8 Mai 2014
Longueur de TITLE et son influence sur referencement et google fait sa description Problèmes de référencement spécifiques à vos sites 17 Octobre 2013
bootstrap span longueur row-fluid Développement d'un site Web ou d'une appli mobile 8 Septembre 2013
[Conseils] Quelle longueurs pour les urls d'une boutique Débuter en référencement 7 Mai 2013
Pour un meilleur referencement : la longueur des pages votre avis? Débuter en référencement 5 Janvier 2013
longueur idéale des liens pour Google ? Débuter en référencement 22 Novembre 2012
Duplicata content à partir de quel longueure de texte ? Référencement Google 28 Septembre 2012
Balises Hn | Longueur maximum ? Débuter en référencement 27 Juillet 2012
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice