[URL REWRITING] Sous domaines (Blogs)

WRInaute discret
Bonjour :)

Je souhaite mettre en place un URL Rewriting sur l'un de mes noms de domaines qui héberge des blogs.

Je prends pour l'exemple : machin.com

L'URL du site : www.machin.com
L'URL d'un des BLOGS du site : www.machin.com/nomdublog/

J'ai créé un willcard DNS pour accepter tous les noms de domaines.

Dans mon .htaccess, j'ai inséré ce code :

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^(.*)\.machin.com [NC]
RewriteRule .* http://www.machin.com/%1/ [R=301]


Mais cette solution ne me satisfait pas !

En fait, j'aimerai que quand un utilisateur se rend sur :
http://nomdublog.machin.com/billet-8.html
Le .htaccess le "redirige" vers :
/nomdublog/article.php?id=8

Mais que cette redirection soit transparente...

Tous les blogs sont stockés dans des répertoires (/blog1/, /blog2/, etc), donc le $1 récupère le sous domaine de l'URL, et le $2 l'url demandée...

Pouvez-vous m'aider ?

Merci par avance, car là je coince réellement ! ;)
 
WRInaute impliqué
Le problème, c'est que tu ne peux pas faire de redirections transparentes si tu veux changer de sous domaine.
Passer de "machine" à "www" ne peut être transparent (si je ne me trompe pas, dans ce cas j'aurai appris quelque chose ;) ).

Par contre, si truc.machin.com est un alias de www.machin.com dans la configuration du serveur (comme Apache), alors tu peux rediriger vers truc.machin.com/truc, tout en restant transparent.

Voir à ceci :
Code:
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^(.+)\.machin.com [NC]
RewriteRule ^billet-([0-8+)\.html /%1/article.php?id=$1 [L]

J'ai enlevé le R=301, parce que ce n'est pas vraiment une redirection permanente.
 
Discussions similaires
Haut