Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Postado
Hoje em dia é muito comum o uso de scripts que rodam no servidor (server-side) para gerar conteúdo dinâmico em páginas web.

Isto é muito interessante, mas gera um problema: URLs grandes ou complicadas demais, difíceis de memorizar e sem significado, que podem até mesmo dificultar a indexação do site por mecanismos de busca.

Retirado de brunotorres.net

Lembro que quando criei meu site, os códigos para criar URLs amigáveis que encontrei na internet não serviam. (O motivo não sei, talvez o servidor fosse chato mesmo :mad:)

Segue o único código que me serviu:

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^index/?$ ./index.php

</IfModule>

Em RewriteRule, podem ver que a index.php poderá ser acessada por /index.

Para adicionar mais páginas, copie a linha e faça as modificações necessárias.


Postado

Não é necessária toda essa trabalheira PedroFelipe,

Eu fiz da seguinte maneira:

RewriteEngine On

RewriteCond %{SCRIPT_FILENAME} !-f

RewriteCond %{SCRIPT_FILENAME} !-d

RewriteRule ^/?([a-zA-Z_-]+)/?$ index.php?pagina=$1

Ou seja, toda requisição irá redirecionar para a pagina, por exemplo www.meusite.com/pagina/ , irá reescrever para index.php?pagina=pagina mantendo a url. Lembrando que aí você tem que criar uma função para buscar a pagina e incluir.

Para evitar conteudo duplicado eu fiz uma regra para redirecionar www.meusite.com/pagina/ para www.meusite.com/pagina (Além de evitar que os motores de busca reconheçam como um diretório, que seria um prejuízo no SEO)

Postado

Apesar do tópico ser velho venho aqui lhe dar os parabéns pois isso dai realmente quebrou meu galho e acredito que de muitos outros daqui do fórum também.

Thanks for sharing !

Postado

Eu faço assim e funciona perfeito e fica fácil de entender

#URL Amigável

RewriteEngine on

RewriteRule ^cursos/?$ cursos.php [NC,L]

RewriteRule ^links/?$ links.php [NC,L]

RewriteRule ^sobre-nos/?$ sobre-nos.php [NC,L]

RewriteRule ^contato/?$ contato.php [NC,L]

RewriteRule ^enviar_email/?$ enviar_email.php [NC,L]

RewriteRule ^envia/?$ envia_comentario.php [NC,L]

Postado
Não utilizo index.php?pagina=id. São páginas .php com um include para header e footer :P

Essa dica de redirecionar /pagina/ para /pagina, como faz?

Simples assim:

RedirectMatch 301 ^/sobre-nos/ /sobre-nos

Postado (editado)

Amigos, eu uso um simples porém muito funcional

RewriteEngine On

RewriteCond %{SCRIPT_FILENAME} !-f

RewriteCond %{SCRIPT_FILENAME} !-d

RewriteCond %{SCRIPT_FILENAME} !(index.php|index.htm|index.html)

RewriteRule ^([A-Za-z0-9_-]*)$ $1.php

Vou explicar, qualquer arquivo, php, html, htm o .htacess manipula e deixa ele sem a extensao final, não precisa de mais nada.

seusite.com/index.php vai ficar seusite.com/index muito bom, experimentem.

abraço.

Editado por Dermival Souza
errinho básico
Postado
RewriteEngine On

RewriteCond %{SCRIPT_FILENAME} !-f

RewriteCond %{SCRIPT_FILENAME} !-d

RewriteCond %{SCRIPT_FILENAME} !(index.php|index.htm|index.html)

RewriteRule ^([A-Za-z0-9_-]*)$ $1.php

Funcionou direitinho usei no WHMCS e no meu site ficou perfeito.

Obrigado

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...

Informação Importante

Concorda com os nossos termos?

-