Para seo e redirecionar páginas antigas, precisamos redirecionar as páginas antigas do site para celular para o novo subdomínio. Mas isso não funciona com a regra de redirecionamento comum que é
<rule>
<from>/m/</from>
<to type="permanent-redirect">http://m.website.com</to>
</rule>
isso está funcionando na maioria das vezes como esperado como
http://website.com/m/
é redirecionado para
http://m.website.com
Depois de fazer isso, enfrentamos um problema estranho. Qual é
http://website.com/module/m/
é redirecionado para
http://website.com/module/http://m.website.com/
O esperado é que, também deve ser redirecionado como anteriormente. o que está causando o problema?
jfi, nossa aplicação web é de struts usando UrlRewriteFilter.
Respostas:
1 para resposta № 1Depois de ir fundo, eu finalmente vim a saber queurlrewritefilter está definindo o caminho relativo para o diretório raiz no valor do local do cabeçalho em resposta ao caminho solicitado, apenas substituindo o padrão de regex correspondente, conforme mencionado acima. Isso pode ser visto Aqui
Portanto, o navegador realmente interpreta isso como caminho relativo para o domínio atual e fornece erro 404.
Isso pode ser resolvido usando a ação de redirecionamento personalizado para lidar com esse tipo de solicitação.