PedroFelipe Postado Novembro 14, 2010 Compartilhar Postado Novembro 14, 2010 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. Link para o comentário Compartilhar em outros sites More sharing options...
Jordan Miguel Postado Novembro 14, 2010 Compartilhar Postado Novembro 14, 2010 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) Link para o comentário Compartilhar em outros sites More sharing options...
PedroFelipe Postado Novembro 15, 2010 Autor Compartilhar Postado Novembro 15, 2010 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? Link para o comentário Compartilhar em outros sites More sharing options...
UploaD Postado Março 9, 2011 Compartilhar Postado Março 9, 2011 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 ! Link para o comentário Compartilhar em outros sites More sharing options...
mcliano Postado Março 9, 2011 Compartilhar Postado Março 9, 2011 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] Link para o comentário Compartilhar em outros sites More sharing options...
Rhuan Postado Março 9, 2011 Compartilhar Postado Março 9, 2011 Eu usava no meu WHMCS, ficava legalsinho... Link para o comentário Compartilhar em outros sites More sharing options...
Jordan Miguel Postado Março 9, 2011 Compartilhar Postado Março 9, 2011 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 Link para o comentário Compartilhar em outros sites More sharing options...
Dermival Souza Postado Março 12, 2011 Compartilhar Postado Março 12, 2011 (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 Março 12, 2011 por Dermival Souza errinho básico Link para o comentário Compartilhar em outros sites More sharing options...
Marcus Postado Março 17, 2011 Compartilhar Postado Março 17, 2011 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 Link para o comentário Compartilhar em outros sites More sharing options...
Marco Antonio Postado Março 18, 2011 Compartilhar Postado Março 18, 2011 Funcionou direitinho usei no WHMCS e no meu site ficou perfeito. Obrigado Sim, a dica é excelente Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados