2008-11-07 9 views
1

J'ai cherché des informations de redirection .htaccès, mais rien de ce que je trouve n'est vraiment ce que je recherche..htaccess Redirections

Fondamentalement, je veux une solution qui prendra un example.com du site et vous permettent d'entrer les URL comme:

123.example.com 
ksdfkjds.example.com 
dsf38jif348.example.com 

et cela les rediriger vers:

example.com/123 
example.com/ksdfkjds 
example.com/dsf38jif348 

Donc, fondamentalement accepter tout sous-domaine et rediriger automatiquement vers un dossier sur la racine du domaine avec le nom de ce sous-domaine.

Répondre

2

Essayez quelque chose comme ceci:

# If we're not on http://example.com 
RewriteCond %{HTTP_HOST} .+\.example.com 

# Add the host to the front of the URL and chain with the next rule 
RewriteRule ^(.*)$ ${HOST}$1 [C,QSA] 

# Make the host a directory 
RewriteRule ^(.*)\.example\.com(.*)$ http://example.com/$1$2 [QSA] 

Vous ne dites pas ce qui devrait arriver à http://foo.example.com/bar?moo - je l'ai fait aller à http://example.com/foo/bar?moo Modifier la dernière ligne si ce n'est pas ce que vous voulez.

0

Si vous voulez juste être l'entrée:

RewriteCond %{HTTP_HOST} ^([^.]+)\.example\.com$ 
RewriteRule^http://example.com/%1 [L,R] 

Sinon:

RewriteCond %{HTTP_HOST} ^([^.]+)\.example\.com$ 
RewriteRule^/%1%{REQUEST_URI} [L]