regle de rewrit

  • Auteur de la discussion Auteur de la discussion enky
  • Date de début Date de début
Hello,

pour un projet de site multilangue je souhaite utiliser des sous domaines mais uniquement un seul jeu de fichiers.

J'ai donc à la racine
/es
/fr
/files

dans les rep /es et /fr j'ai juste un htaccess qui devrais chercher les fichier communs dans /files:

Code:
RewriteRule ^search-([a-zA-Z0-9-]+).html$ /../files/search.php?q=$1&l=5&n=100 [L]
RewriteRule ^autor-([0-9]+)/?$ /../files/auter.php?l=5&p=$1 [L]

Mais évidement ça ne fonctionne pas j'ai une erreur 400 Bad Request.

Si vous avez des idées pour me sortir de ce petit probléme.

Merci
 
Justement il faut bien un début ;)

Perso je voie pas d'autres moyens pour accéder aux données ...
 
Tu ré-écrit ton URL ainsi :
/../etc...

Si on découpe ce que tu demandes à Apache :
premier caractère : / -> racine de ton site
ensuite, .. -> remonter d'un cran

Là, apache il t'envoit bouler parce qu'il n'est pas question de remonter d'un cran depuis la racine du site.

Normalement, -http://www.example.com/files devrait être accessible, et ton rewrite devrait s'écrire ainsi :
Code:
RewriteRule ^search-([a-zA-Z0-9-]+).html$ /files/search.php?q=$1&l=5&n=100 [L]
RewriteRule ^autor-([0-9]+)/?$ /files/auter.php?l=5&p=$1 [L]
 
Merci ChezThierry, c'est ce que je penser au début, mais si je fait ça j'ai une 404 ...

Arrgggg...
 
enky a dit:
Merci ChezThierry, c'est ce que je penser au début, mais si je fait ça j'ai une 404 ...

Arrgggg...

c'est déjà beaucoup mieux : ça veut dire que y'a juste un pb de chemin vers ta page.

tu as bien un fichier là : tonsite.com/files/search.php ?
 
Et non comme je l'ai dit tous les rep sont à la racine de mon espace web et non pas à la racine de mon site :
/es
/fr
/files

-www.monsite.net pointe sur /fr
-es.monsite.net pointe sur /es
 
et ça ?
Code:
RewriteRule ^search-([a-zA-Z0-9-]+).html$ /files/search.php?q=$1&l=5&n=100 [L]
RewriteRule ^autor-([0-9]+)/?$ /files/auter.php?l=5&p=$1 [L]
 
C'est ce que ChezThierry me propose mais ça ne fonctione pas.
en effet ça fonctionnerais si le dossier resembler à ça : /es/files/
mais bon ce n'est pas le cas.
Merci
 
ou alors ça :
Code:
RewriteRule ^search-([a-zA-Z0-9-]+).html$ ../files/search.php?q=$1&l=5&n=100 [L]
RewriteRule ^autor-([0-9]+)/?$ ../files/auter.php?l=5&p=$1 [L]
 
Les .htaccess ce trouvent aux racines /fr et /es
la solution que tu me propose c'est celle que j'ai tester en 1er et qui ne fonctionne pas...
Je cherche aussi de mon coté.
Merci.
 
jeroen a dit:
et un .htaccess à la racine du site ??
(hors des rep. de langue)
du genre
Code:
RewriteRule search-([a-zA-Z0-9-]+).html$ files/search.php?q=$1&l=5&n=100 [L]
RewriteRule autor-([0-9]+)/?$ files/auter.php?l=5&p=$1 [L]
 
Essaye un .htaccess à la racine du site avec ça :
Code:
RewriteRule ^(es|fr)/search-([a-zA-Z0-9-]+).html$ /files/search.php?q=$1&l=5&n=100 [L]
RewriteRule ^(es|fr)/autor-([0-9]+)/?$ /files/auter.php?l=5&p=$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