Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Htaccess: adicionar barra final do URL

Boa tarde, não consigo de forma alguma forçar a barra obliqua no final do URL do meu site. Já fiz vários testes e nenhum surte o resultado que espero. Neste código já consegui remover a extensão do URL. Gostaria de alguma ajuda para resolver esse problema.


<IfModule mod_rewrite.c>
#### Force HTTPS://WWW and remove trailing / from files ####
## Turn on rewrite engine
RewriteEngine on

# Remove trailing slash from non-filepath urls
RewriteCond %{REQUEST_URI} /(.+)/$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ https://www.asapenvolvedoras.com.br/%1 [R=301,L]

# Include trailing slash on directory 
RewriteCond %{REQUEST_URI} !(.+)/$
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+)$ https://www.asapenvolvedoras.com.br/$1/ [R=301,L]

# Force HTTPS and WWW 
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [OR,NC]
RewriteCond %{https} off  
RewriteRule ^(.*)$ https://www.asapenvolvedoras.com.br/$1 [R=301,L]

RewriteBase /
## hide .html extension
# To externally redirect /dir/foo.html to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+).html
RewriteRule ^ %1 [R=301,L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)/\s
RewriteRule ^ %1 [R=301,L]

## To internally redirect /dir/foo to /dir/foo.html
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^([^\.]+)$ $1.html [L]

<Files ~"^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
satisfy all
</Files>
</IfModule>

Agradeço desde já. Thiago

2 respostas

Olá Thiago!

Só não entendi bem onde é a barra obliqua que você quer deixar visível, é somente no final no domínio raiz ( alura.com.br/ ) ou nos subdiretórios ? Ou em ambos?

Segundo o John Mueller, do Google, que esclareceu em sua própria do Twitter: "Percebi que havia alguma confusão em relação às barras invertidas nos URLs, então espero que isso ajude. Barra ( / ) na raiz do nome do host = não importa; barra em outro lugar = importa (são URLs diferentes)" Link Twitt John Mueller.

E se tratando da URL principal do domínio, talvez seja desnecessário colocar a barra no final, já que que alguns navegadores como o Chrome já removem a barra automaticamente.

Espero que tenha ajudado, se não ajudou, mandar mais detalhes sobre o que você quer fazer!

solução!

Boa tarde Jonilson, obrigado pela resposta.

Na verdade eu precisava colocar a barra obliqua no final do url dos subdiretórios (ex: alura.com.br/exemplo/), pois preciso reutilizar alguns endereços que foram criados no Wordpress e por padrão é utilizada essa barra obliqua no final do endereço . Como é um serviço que estou fazendo de posicionamento no Google, é de extrema importaria manter os endereços. Consegui resolver o problema da seguinte maneira:

Adicionar o barra (/) no final do endereço URL

RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !/$ RewriteRule . %{REQUEST_URI}/ [L,R=301]

Redirecionar internamente as páginas sem extensão para o arquivo correspondente

RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}.html -f RewriteRule ^(.*?)/?$ $1.html [L]

Novamente obrigado, e marcarei como solucionado esse tópico.