2011-12-05 16 views
9

Me preguntaba si la siguiente situación es posible usando las reglas de htaccess. Quiero que un subdominio sea redireccionado a otra url. He contactado al administrador del servidor para agregar el subdominio "prueba" al dominio "ejemplo.com". El dominio principal no tiene otros subdominios.redirección de subdominios en htaccess

¿Qué regla debo poner en htaccess para lograr: http://test.example.com que se redirigirá a http://www.something-else.com.

NOTA: www.something-else.com es una url complicada (200 caracteres de longitud)

EDITAR Mi htaccess completa ahora se ve así:

Options +FollowSymLinks 
RewriteEngine on 
RewriteOptions inherit 
RewriteBase/

RewriteCond %{HTTP_HOST} ^test.example.com$ [NC] 
RewriteRule ^(.*)$ http://www.example.com/redir.php [L] 

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

se encuentra el archivo .htaccess al directorio raíz de example.com. No tengo acceso físico al subdirectorio de prueba, aunque sé que existe - el ping a esa url me muestra la IP de example.com

Escribir test.example.com en la barra de direcciones del navegador no tiene ningún efecto. Pantalla en blanco, sin redirección, sin nada. Si existe alguna página allí, no sé.

+0

¿Qué es una url complicada? –

+0

@Book Of Zeus: https://www.somdomain.com/a/folder1/somepage?var=xxx&var2=xxx&var3=xxx&var4=http://another-domain.com/folder1/xxxxx/&var5=xxx&var6=xxxx – andrew

+0

http://stackoverflow.com/a/1460652/567986 pero debe eliminar ', P' al final y eliminar% {REQUEST_URI}. – Gerben

Respuesta

17

para las direcciones URL estáticas:

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^test.example.com$ [NC] 
RewriteRule ^(.*)$ https://www.somdomain.com/a/folder1/somepage?var=xxx&var2=xxx&var3=xxx&var4=http://another-domain.com/folder1/xxxxx/?&var5=xxx&var6=xxxx [R=301,NC,L] 

Para las URLs dinámicas (si el dominio original tiene carpetas que necesita ser trasladado a otro dominio):

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^test.example.com$ [NC] 
RewriteRule ^(.*)$ https://www.somdomain.com%{REQUEST_URI} [R=301,NC,L,QSA] 

De tu edición:

RewriteEngine On 
RewriteBase/
RewriteCond %{HTTP_HOST} ^test.example.com$ [NC] 
RewriteRule ^(.*)$ redir.php [R=301,NC,L] 
+0

no doenst trabajo. A primera vista, pensé que la URL de redirección estaba rompiendo el htaccess. Lo puse en un archivo php y cambié mi htaccess para redirigir el subdominio al archivo php. Sigue sin funcionar. RewriteEngine En RewriteCond% {HTTP_HOST}^test.example.com $ [NC] RewriteRule^(. *) $ Http://www.example.com/redir.php [R = 301, NC, L] – andrew

+0

He actualizado mi respuesta –

+0

Todavía nada. Debería funcionar, lo sé, pero no es así. He editado mi publicación original para mostrar mi htaccess completo. Estoy confundido.Parecía tan simple al principio – andrew

Cuestiones relacionadas