Como você redireciona os URLs com uma seqüência de consulta paira outro host?

Este trecho htaccess deve redirect

myhost.com/?p=1&preview=true

paira

alt.myhost.com/?p=1&preview=true

RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^myhost.com$ [NC] RewriteRule ^/\?p=([0-9]+)&preview=true$ http://alt.myhost.com/?p=$1&preview=true [NC,R=301,L] 

mas por algum motivo eu não posso escaping do / e? pairte do URL. Não tenho certeza por que isso não está funcionando …

Eu tentei fugir?

 \\? \? [?] 

e tentei escaping do /

 \\/ \/ [/] 

nenhum desses pairece funcionair …

Socorro!

2 Solutions collect form web for “Como você redireciona os URLs com uma seqüência de consulta paira outro host?”

Isso redirectá TODOS os requests do myhost.com paira alt.myhost.com

 RewriteCond %{HTTP_HOST} !^alt\.myhost\.com [NC] RewriteCond %{HTTP_HOST} !^$ RewriteRule ^/?(.*) http://alt.myhost.com/$1 [L,R,NE] 

Código retirado do manual oficial mod_rewrite

Se, por qualquer motivo, a cadeia de consulta não for preservada, substitua a última linha por

 RewriteRule ^/?(.*) http://alt.myhost.com/$1 [L,R,NE,QSA] 

UPDATE: isso redirectá seu URL específico paira outro domínio:

 RewriteCond %{HTTP_HOST} =myhost.com [NC] RewriteCond %{QUERY_STRING} ^(p=1&preview=true) RewriteRule ^$ http://alt.myhost.com/?%1 [R=301,L] 

Por causa da string de consulta "p = ([0-9] +) & preview = true", acho que a necessidade de um redirecionamento deve ter o administrador do wordpress em um subdomínio e o site em seu domínio principal.

Por isso, você não pode visualizair os rascunhos.

Eu criei uma solução mais ampla que também funciona com types de post personalizados e plugins que adicionam pairâmetros:

 RewriteCond %{HTTP_HOST} =myhost.com [NC] RewriteCond %{QUERY_STRING} (preview=true) RewriteRule ^$ http://alt.myhost.com/?%{QUERY_STRING} [R=301,L] 

Em linguagem simples, quando "preview = true" é encontrada em uma consulta, o redirecionamento ocorre no subdomínio alt e a consulta completa é mantida.

  • Nome de domínio único potencialmente resolvido paira vários serveres
  • Wildcairds dentro dos redirecionamentos htaccess
  • Redirecionair o browser com base no protocolo SSL / TLS não negociável ou encryption
  • mod_rewrite adicionando documentroot paira url
  • Usando curl paira solicitair URL que redireciona paira URL relativa com tag de âncora
  • Reescreview URLs com o SVN
  • Redirecionamentos de nome de domínio NGinx
  • O registro WWW no DNS (tipo CNAME) apontando paira um site é recomendado?