2011-09-29 31 views
6

estoy usando el siguiente para redirigir los dominios comodín sub carpetas correspondientes a:.htaccess mod-reescritura de subdominio

RewriteCond %{REQUEST_URI} !^/users/ [NC] 
RewriteCond %{HTTP_HOST} ^(.+)\.domain\.com$ [NC] 
RewriteCond %1 !=www [NC] 
RewriteRule ^(.*)$ /users/%1/$1/? [L] 

Me gustaría añadir una regla de reescritura que redirige cualquier persona que tenga acceso al/a los usuarios directos/ruta volver a la versión del subdominio de esta manera:

www.domain.com/users/username/../../ => username.domain.com/../../ 

¡Gracias de antemano!

Respuesta

10

Algo como esto:

RewriteEngine On 

RewriteCond %{http_host} ^domain.com [nc] 
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,NC] 

RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [NC] 
RewriteRule ^users/([a-z0-9\-_\.]+)/?(.*)$ http://$1.domain.com/$2 [QSA,NC,R,L] 

¿Tiene reglas distintas a la que aparece en la pregunta? si es así, pon estos antes que el otro.

por ejemplo:

http://www.domain.com/users/abc?q=test => http://abc.domain.com/?q=test 
http://www.domain.com/users/abc/sub1/sub2 => http://abc.domain.com/sub1/sub2 
http://www.domain.com/users/abc/sub1/?q=test => http://abc.domain.com/sub1/?q=test 
+0

Gracias! Sin embargo, esto parece funcionar solo para ../users/username => username.dominio.com, necesito que también funcione para ../users/username/sub1/sub2/ => username.dominio.com/sub1/sub2 . es posible? – dSquared

+0

He actualizado mi respuesta –

+0

¡Muchas gracias! Eso funciona perfecto, ¿hay alguna posibilidad de que funcione tanto en las versiones de www.dominio.com como de dominio.com? – dSquared

Cuestiones relacionadas