Comment crée un .htacces

  • Auteur de la discussion Auteur de la discussion Aelis
  • Date de début Date de début
WRInaute impliqué
Bonjour,
le .htaccess et non pas .htacces se place a la racine du site ou dans le repertoire de travail
 
WRInaute occasionnel
Sans vouloir être casse-bonbon, mod-rewrite-wizard, c'est pratique, mais ça ne remplace pas la lecture de la documentation.

Pour répondre quand même un peu à cette question, non, tu n'as besoin que d'un fichier pour tout le répertoire, tout le site même, si tu le places à la racine du site.

Un fichier .htaccess peut contenir 10.000 règles si tu veux (bien qu'avec 10.000 règles, ça ait des chances de ramer sévère)

PS: j'ai indiqué 10.000 règles, comme j'aurais dit 50.000, c'est pas écrit dans le béton
 
WRInaute accro
Dans un fichier .htaccess, tu mets des règles.

Dans le cas de redirections, tu peux t'amuser à faire ça:

Code:
RewriteEngine On
RewriteRule ^index.php?var=a$ index-a.html [R=301]
RewriteRule ^index.php?var=b$ index-b.html [R=301]
RewriteRule ^index.php?var=c$ index-c.html [R=301]
RewriteRule ^index.php?var=d$ index-d.html [R=301]
... etc jusqu'à 10.000

mais tu peux aussi, et je te le conseille, trouver les logiques qui te permette d'isoler certains groupes de pages, et finir avec

Code:
RewriteEngine On
RewriteRule ^index.php?var=(.*)$ index-$1.html [R=301]
RewriteRule ^index.php?var=(.*)&date=([0-9]+)$ /$2/index-$.html [R=301]

etc...
 
WRInaute occasionnel
Euh, non, mauvais exemple, on n'accède pas aux variables comme ça dans le .htaccess (faut passer par %{QUERY_STRING})

De plus, ton .htaccess est à l'envers, l'utilisateur final voit index.php?var=truc pour le rediriger en interne sur index-truc.html. En général, on fait un .htaccess pour aller dans l'autre sens :)

Pour rejoindre ce que tu dis, cependant, voilà ce que ferait un débutant en rewrite :
Code:
RewriteEngine On
RewriteRule ^index-a.html$ index.php?var=a [L]
RewriteRule ^index-b.html$ index.php?var=b [L]
RewriteRule ^index-c.html$ index.php?var=c [L]
RewriteRule ^index-d.html$ index.php?var=d [L]
etc...

Et voila ce qu'il faudrait plutot faire pour profiter des variables des regexp :
Code:
RewriteEngine On
RewriteRule ^index-(.+)\.html$ index.php?var=$1 [L]
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut