Mudanças entre as edições de "RewriteRule do Apache para não codificar o caractere especial em um redirecionamento"
De Wiki Integrator do Brasil
(6 edições intermediárias de um usuário não apresentadas) | |||
Linha 1: | Linha 1: | ||
− | + | [[File:Phppromo-2021.jpg|center| 700px||border|link=https://integrator.com.br/plano-hospedagem-php-html|Planos PHP/HTML|]] | |
− | |||
− | + | ---- | |
− | + | ||
− | |||
− | |||
− | |||
− | |||
+ | ; 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:<br /> | |
− | RewriteCond %{HTTP_HOST} ^comescape\.javaworld\.com\.br$ [OR] | + | 1. Nosso '''.htaccess''' original criado pelo cPanel para um redirecionamento: |
− | RewriteCond %{HTTP_HOST} ^www\.comescape\.javaworld\.com\.br$ | + | <pre> |
− | RewriteRule ^/?$ "http\:\/\/ok\.javaworld\.com\.br\/\#\/1" | + | 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] | ||
+ | </pre> | ||
+ | 2. Alteramos o final [R=301,L] para '''[NE,L=301]:''' | ||
+ | <pre> | ||
+ | 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] | ||
+ | </pre> | ||
Essa e outras dicas são apresentadas na [http://httpd.apache.org/docs/2.2/rewrite/advanced.html#redirectanchors documentação do Apache]. | Essa e outras dicas são apresentadas na [http://httpd.apache.org/docs/2.2/rewrite/advanced.html#redirectanchors documentação do Apache]. | ||
Linha 24: | Linha 30: | ||
[[Categoria:TUTORIAIS]] | [[Categoria:TUTORIAIS]] | ||
[[Categoria:PHP]] | [[Categoria:PHP]] | ||
+ | [[Categoria:APACHE]] |
Edição atual tal como às 20h09min de 5 de agosto de 2021
- 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.