RewriteRule do Apache para não codificar o caractere especial em um redirecionamento

De Wiki Integrator do Brasil
Ir para: navegação, pesquisa
Phppromo-2021.jpg




RewriteRule do Apache para não codificar o caractere especial # em um redirecionamento

Caso esteja querendo redirecionar seu domínio para outra URL, cujo o recurso do endereço contém o caractere especial #, saiba que inicialmente, no padrão, configurado pelo painel, será automaticamente convertido para %23.

Para resolver isso, altere o redirecionamento criado pelo painel, adicionando um NE ao final do redirecionamento, veja como:
1. Nosso .htaccess original criado pelo cPanel para um redirecionamento:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^comescape\.javaworld\.com\.br$ [OR]
RewriteCond %{HTTP_HOST} ^www\.comescape\.javaworld\.com\.br$
RewriteRule ^/?$ "http\:\/\/ok\.javaworld\.com\.br\/\#\/1" [R=301,L]

2. Alteramos o final [R=301,L] para [NE,L=301]:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^comescape\.javaworld\.com\.br$ [OR]
RewriteCond %{HTTP_HOST} ^www\.comescape\.javaworld\.com\.br$
RewriteRule ^/?$ "http\:\/\/ok\.javaworld\.com\.br\/\#\/1" [NE,L=301]

Essa e outras dicas são apresentadas na documentação do Apache.