Diéssica 140 Denunciar post Postado Novembro 19, 2011 Estou com um problema nas minhas URLs amigáveis. Ativei o mod_rewrite no Apache do EasyPHP já, só não consigo fazer pegar. Coloquei estes arquivos na raíz: index.php, home.php, contato.php, erro.php, htaccess. No index fica o include que cria os ?p= pra página. A página raíz do include é "home.php" e se não achar as páginas aparece a página "erro.php". Meu código htaccess: <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^([^/]*)$ /index.php?p=$1 [L] </IfModule> Na página index.php tem um pequeno menu que linka para /index.php?p=contato e /contato. O ?p=contato funciona normalmente, mas o /contato não, ou seja, não identifica o htaccess e dá como se o "DIRETÓRIO" não existisse. Compartilhar este post Link para o post Compartilhar em outros sites
Henrique Barcelos 290 Denunciar post Postado Novembro 19, 2011 Verifique se o mod_rewrite está ativado. Localize o arquivo httpd.conf do apache e descomente (retire o '#' do início), ou adicione as linhas LoadModule rewrite_module modules/mod_rewrite.so AddModule mod_rewrite.c Compartilhar este post Link para o post Compartilhar em outros sites
Diéssica 140 Denunciar post Postado Novembro 19, 2011 Verifique se o mod_rewrite está ativado. Localize o arquivo httpd.conf do apache e descomente (retire o '#' do início), ou adicione as linhas LoadModule rewrite_module modules/mod_rewrite.so AddModule mod_rewrite.c Procurei "mod_rewrite" no httpd.conf do Apache do EasyPHP e já tava assim: #LoadModule reqtimeout_module modules/mod_reqtimeout.so LoadModule rewrite_module modules/mod_rewrite.so LoadModule setenvif_module modules/mod_setenvif.so #LoadModule speling_module modules/mod_speling.so Arquivo htaccess: <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^(.*)/?([0-9]*)/?([0-9]*)/?$ index.php?p=$1 </IfModule> Compartilhar este post Link para o post Compartilhar em outros sites
Henrique Barcelos 290 Denunciar post Postado Novembro 19, 2011 Retire esse IF aí: RewriteEngine On RewriteRule ^([^/]*)/?$ index.php?p=$1 Compartilhar este post Link para o post Compartilhar em outros sites
Diéssica 140 Denunciar post Postado Novembro 20, 2011 Meu htaccess se chamava "htaccess" quando deveria se chamar ".htaccess". Legal. Código que usei: Options FollowSymLinks RewriteEngine on RewriteBase / RewriteRule ^([a-z]+)/?$ ?p=$1 E Henrique, sua dica do IF foi válida! Ajudou tbm! Obrigada! Resolvido! Compartilhar este post Link para o post Compartilhar em outros sites
Henrique Barcelos 290 Denunciar post Postado Novembro 20, 2011 Deixa eu adivinhar, você usa Windows... É meio complicadinho criar um arquivo chamado ".htaccess" no Windows mesmo... Ainda bem que você percebeu, pois eu jamais adivinharia que era isso B) Compartilhar este post Link para o post Compartilhar em outros sites
Diéssica 140 Denunciar post Postado Dezembro 5, 2011 O tópico foi resolvido mas sim, eu uso Windows. E pior que nos tutoriais ele só falam pra criar um arquivo com nome "htaccess" =/ Obrigada Compartilhar este post Link para o post Compartilhar em outros sites