Trop d'URL Rewriting = ralentissements ?

Nouveau WRInaute
salut,
je me pose plusieurs questions, ca fait un petit moment que j'utilise l'URL Rewriting sur plusieurs des sites que je gère, depuis peu j'y ai rajouté le rewriting des URL sans le www avec le www mais je commence à me demander (sans n'avoir pour autant constaté de probème particulier) si le fait de faire un fichier .HTACCESS trop massif ne pouvait pas ralentir le serveur apache ?

voilà par ex mon HTACCESS :

Code:
RewriteEngine on 
RewriteCond %{HTTP_HOST} ^domaine.fr$ [NC] 
RewriteRule ^(.*)$ http://www.domaine.com/$1 [R=301,L] 
RewriteCond %{HTTP_HOST} ^www.domaine.fr$ [NC] 
RewriteRule ^(.*)$ http://www.domaine.com/$1 [R=301,L] 
RewriteCond %{HTTP_HOST} ^domaine.com$ 
RewriteRule ^(.*)   http://www.domaine.com/$1  [QSA,L,R=301]
RewriteRule ^artiste-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /artiste.php?num=$2&newlang=$1 [L]
RewriteRule ^artiste-([0-9]+)([A-Z]*)(-?)(.*)$ /artiste.php?num=$1&head=$2 [L]
RewriteRule ^chronique-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /chronique.php?num=$2&newlang=$1 [L]
RewriteRule ^chronique-([0-9]+)([A-Z]*)(-?)(.*)$ /chronique.php?num=$1 [L]
RewriteRule ^article-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /article.php?num=$2&newlang=$1 [L]
RewriteRule ^article-([0-9]+)([A-Z]*)(-?)(.*)$ /article.php?num=$1 [L]
RewriteRule ^riddim-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /riddims.php?num=$2&newlang=$1 [L]
RewriteRule ^riddim-([0-9]+)([A-Z]*)(-?)(.*)$ /riddims.php?num=$1 [L]
RewriteRule ^interview-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /interview.php?num=$2&newlang=$1 [L]
RewriteRule ^interview-([0-9]+)([A-Z]*)(-?)(.*)$ /interview.php?num=$1 [L]
RewriteRule ^news-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /news.php?num=$2&newlang=$1 [L]
RewriteRule ^news-([0-9]+)([A-Z]*)(-?)(.*)$ /news.php?num=$1 [L]
RewriteRule ^photos-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /reports_photo.php?num=$2&newlang=$1 [L]
RewriteRule ^photos-([0-9]+)([A-Z]*)(-?)(.*)$ /reports_photo.php?num=$1 [L]
RewriteRule ^annuaire_radios.php3$ /annuaire.php [L]
RewriteRule ^(.*).php3$ /$1.php [L]

j'en profite pour poser une question aux connaisseurs, je souhaiterait arriver à faire fonctionner en 1 ligne, plusieurs de mes redirections à savoir que si un mec tappes example.fr ou www.example.fr ou meme example.com il soit renvoyé vers www.example.com, est ce possible ?

merci pour vos réponses.
 
WRInaute discret
noiwid a dit:
j'en profite pour poser une question aux connaisseurs, je souhaiterait arriver à faire fonctionner en 1 ligne, plusieurs de mes redirections à savoir que si un mec tappes example.fr ou www.example.fr ou meme example.com il soit renvoyé vers www.example.com, est ce possible ?

merci pour vos réponses.

la réponse m'interesse aussi (up déguisé ;-))
 
WRInaute discret
Pour en revenir à la question initiale, j'ai un .HTACCESS beaucoup plus gros que ça et je ne constate pas de ralentissement spécifique.

Ceci dit c'est pas forcement la taille qui va avoir une incidence sur le 'temps de ré-écriture'. Certaine expressions génériques peuvent être plus gourmandes que d'autres. Si y faut en une ligne tordu tu mets le serveur à genou alors qu'avec une grosse page ça se passe bien.

Je sais pas comment on pourrait mesurer ça ??

Quelqu'un a une idée ?
 
WRInaute discret
je ne pense pas que ça ait un impact significatif, à moins d'avoir une réécriture récursive avec énormément de paramètres dans l'url, et encore...
 
WRInaute accro
SI quelqu'un a des infos sur les ressources bouffées par l'URL Rewriting sur Apache, je suis preneur aussi :D.
 
WRInaute accro
on met l'url rewriting ou on le met pas...

on n'a pas le beurre et l'argent du beure

après si votre mutu ne supporte pas vous prennez plus gros ou vous passez en dédié avec les gains apportés grace à l'url rewriting ^^
 
WRInaute accro
Justement, ce serait bien d'avoir un ordre d'idée des ressources prises, et surtout quelles sont les règles qui ont tendance à être "ressourcesphages" :p.
 
WRInaute occasionnel
noiwid a dit:
j'en profite pour poser une question aux connaisseurs, je souhaiterait arriver à faire fonctionner en 1 ligne, plusieurs de mes redirections à savoir que si un mec tappes example.fr ou www.example.fr ou meme example.com il soit renvoyé vers www.example.com, est ce possible ?

ça :
Code:
RewriteCond %{HTTP_HOST} ^domaine.fr$ [NC]
RewriteRule ^(.*)$ http://www.domaine.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.domaine.fr$ [NC]
RewriteRule ^(.*)$ http://www.domaine.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^domaine.com$
RewriteRule ^(.*)   http://www.domaine.com/$1  [QSA,L,R=301]

ça se ré-écrit :
Code:
RewriteCond %{HTTP_HOST} !^www\.domaine\.com$ [NC]
RewriteRule ^(.*)$ http://www.domaine.com/$1 [QSA,R=301,L]



et ça :

Code:
RewriteRule ^artiste-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /artiste.php?num=$2&newlang=$1 [L]
RewriteRule ^artiste-([0-9]+)([A-Z]*)(-?)(.*)$ /artiste.php?num=$1&head=$2 [L]
RewriteRule ^chronique-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /chronique.php?num=$2&newlang=$1 [L]
RewriteRule ^chronique-([0-9]+)([A-Z]*)(-?)(.*)$ /chronique.php?num=$1 [L]
RewriteRule ^article-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /article.php?num=$2&newlang=$1 [L]
RewriteRule ^article-([0-9]+)([A-Z]*)(-?)(.*)$ /article.php?num=$1 [L]
RewriteRule ^riddim-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /riddims.php?num=$2&newlang=$1 [L]
RewriteRule ^riddim-([0-9]+)([A-Z]*)(-?)(.*)$ /riddims.php?num=$1 [L]
RewriteRule ^interview-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /interview.php?num=$2&newlang=$1 [L]
RewriteRule ^interview-([0-9]+)([A-Z]*)(-?)(.*)$ /interview.php?num=$1 [L]
RewriteRule ^news-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /news.php?num=$2&newlang=$1 [L]
RewriteRule ^news-([0-9]+)([A-Z]*)(-?)(.*)$ /news.php?num=$1 [L]
RewriteRule ^photos-([a-z]{2})-([0-9]+)([A-Z]*)(-?)(.*)$ /reports_photo.php?num=$2&newlang=$1 [L]
RewriteRule ^photos-([0-9]+)([A-Z]*)(-?)(.*)$ /reports_photo.php?num=$1 [L]
RewriteRule ^annuaire_radios.php3$ /annuaire.php [L]
RewriteRule ^(.*).php3$ /$1.php [L]

ça se ré-écrit :
Code:
RewriteRule ^(artiste|chronique|article|interview|news)-([a-z]{2})-([0-9]+).*$ /$1.php?num=$3&newlang=$2 [L]
RewriteRule ^(artiste|chronique|article|interview|news)-([0-9]+).*$ /$1.php?num=$2 [L]
RewriteRule ^photos-([a-z]{2})-([0-9]+).*$ /reports_photo.php?num=$2&newlang=$1 [L]
RewriteRule ^photos-([0-9]+).*$ /reports_photo.php?num=$1 [L]
RewriteRule ^riddim-([a-z]{2})-([0-9]+).*$ /riddims.php?num=$2&newlang=$1 [L]
RewriteRule ^riddim-([0-9]+).*$ /riddims.php?num=$1 [L]
RewriteRule ^annuaire_radios.php3$ /annuaire.php [L]
RewriteRule ^(.*).php3$ /$1.php [L]
(dommage, si riddim ne donnait pas riddims et photos ne donnait pas reports_photo, on gagnerait encore 4 lignes :)
 
Nouveau WRInaute
ChezThierry a dit:
ça :
Code:
RewriteCond %{HTTP_HOST} ^domaine.fr$ [NC]
RewriteRule ^(.*)$ http://www.domaine.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.domaine.fr$ [NC]
RewriteRule ^(.*)$ http://www.domaine.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^domaine.com$
RewriteRule ^(.*)   http://www.domaine.com/$1  [QSA,L,R=301]

ça se ré-écrit :
Code:
RewriteCond %{HTTP_HOST} !^www\.domaine\.com$ [NC]
RewriteRule ^(.*)$ http://www.domaine.com/$1 [QSA,R=301,L]

salut et merci pour ta réponse,
si je prend le code que tu me donnes, mes sous domaines ne fonctionnent plus... une idée ?
 
WRInaute occasionnel
noiwid a dit:
ChezThierry a dit:
ça :
Code:
RewriteCond %{HTTP_HOST} ^domaine.fr$ [NC]
RewriteRule ^(.*)$ http://www.domaine.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.domaine.fr$ [NC]
RewriteRule ^(.*)$ http://www.domaine.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^domaine.com$
RewriteRule ^(.*)   http://www.domaine.com/$1  [QSA,L,R=301]

ça se ré-écrit :
Code:
RewriteCond %{HTTP_HOST} !^www\.domaine\.com$ [NC]
RewriteRule ^(.*)$ http://www.domaine.com/$1 [QSA,R=301,L]

salut et merci pour ta réponse,
si je prend le code que tu me donnes, mes sous domaines ne fonctionnent plus... une idée ?

Au temps pour moi, j'avais pas compris que tu avais des sous-domaines. Contente-toi de ça alors, si on tente de diminuer à 1 seule condition on va se retrouver avec un truc inmangeable :
Code:
RewriteCond %{HTTP_HOST} ^domaine\.(fr|com)$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www\.domaine\.fr$ [NC]
RewriteRule ^(.*)$ http://www.domaine.com/$1 [R=301,L,QSA]

(a tester pour vérifier, suis en pleine digestion donc mon cerveau est occupé:) )
 
Discussions similaires
Haut