Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Lúcio Gomes

.htaccess e expressões regulares

Recommended Posts

Meu .htaccess atual:

RewriteRule ^(.+)\//?$ /dir/arquivo.php?value=$1

 

Sempre que digitar: meusite.com.br/valor/

O item 'valor' não, se não é nenhuma pasta, então carrega o conteúdo do endereço equivalente a:

meusite.com.br/dir/arquivo.php?value=valor

 

O problema é que se eu digitar sem a / (barra) final: meusite.com.br/valor

O .htaccess não identifca a mesma regra e não carrega (dá erro).

 

Eu tentei isso:

RewriteRule ^(.+)$ /dir/arquivo.php?value=$1

 

Mas daí o problema só inverte, acessa sem a barra (/) final, mas quando coloco a barra dá erro.

 

Queria saber, como fazer para aceitar dos 2 jeitos?

 

Ou melhor, para otimizar para o google, se o usuário digitar sem a barra final, redirecionar para a página com a barra final.

 

Eu já tentei inserir:

RewriteRule ^/(([^/]+/)*([^/.]+))$ /$1/ [R=301]

 

Funcionou muito bem, mas isso só quando o diretório existe. Se for um diretório virtual como o /valor daí ele não adiciona a / final.

 

Alguém pode me ajudar com esse complexo problema (pelo menos para mim, rsrs).

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, alguma sugestão ou ideia para ajudar a resolver esse problema?

Se precisar adicionar mais de uma linha não há problema, mas quando eu tentei deixar as 2 instruções (para pegar tanto com ou sem barra no final):

 

RewriteRule ^(.+)\//?$ /dir/arquivo.php?value=$1

RewriteRule ^(.+)$ /dir/arquivo.php?value=$1

 

Ele só pegou a última instrução e ignorou completamente a primeira.

E acho que isso também não seria interessante se funcionasse, pois poderia ser considerado conteúdo duplicado pelo Google.

Seria interessante o redirecionamento mesmo, se acessar meusite.com.br/valor já redirecionar para meusite.com.br/valor/ (com a barra no final), assim é melhor para SEO.

 

Bom, aguardo sugestões de vocês, pois estou testando aqui várias possibilidades mas não estou conseguindo e não achei nenhum conteúdo sobre essa questão da barra final, além da tentativa que eu já fiz (no primeiro post).

 

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.