MacX 0 Denunciar post Postado Maio 29, 2012 Bom dia pessoal, Uso CodeIgniter e estou tentando fazer URLs amigáveis. Percebi que para fazer isso, preciso mexer em suas rotas acessando: APPLICATION/CONFIG/ROUTES.PHP. Os links do meu site atualmente estão assim: meusite.com.br/index.php/site/empresa Preciso que fique assim: meusite.com.br/empresa Alguém pode me ajudar? Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
Massaki 47 Denunciar post Postado Maio 29, 2012 3 passos iniciais: 1 - Habilite o suporte a reescrita de URL no apache e libere o módulo rewrite a. No windows (arquivo httpd.conf) <Directory "C:/wamp/www/"> (a parte em vermelho pode variar, dependendo do servidor. Não mexa em nada aqui) Option Indexes FollowSymLinks AllowOverride No (Nesta parte, mude de 'No' para 'All') .... </Directory> ... LoadModule rewrite_module modules/mod_rewrite.so (descomente a linha, retirando o '#') b. No Linux (arquivo /etc/apache2/sites-available/default): Faça a mesma coisa que o que está em azul acima Para liberar o módulo rewrite: a2enmod rewrite 2 - Crie um arquivo .htaccess no diretório raiz do servidor com o seguinte conteúdo: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ site/index.php/$1 [L] 3 - Edite o arquivo application/config/config.php Deixe as seguintes partes assim: $config['base_url'] = 'meusite.com.br'; // Altere para o nome do seu site $config['index_page'] = ''; Aí reinicie o servidor. O arquivo application/config/routes.php só serve para definir a rota padrão (default_route) e atalhos para encurtar o acesso a algumas partes do programa. Compartilhar este post Link para o post Compartilhar em outros sites
Gabriel Heming 766 Denunciar post Postado Maio 29, 2012 No CodeIgniter é mais simples ainda.... Se já aparece a url amigável, basta seguir os passos já mencionados acima. Vá no arquivo aplicattion/config/config.php Na linha 29, vai ter mais ou menos isso aqui: $config['index_page'] = 'index.php'; Apenas deixe uma string vazia: $config['index_page'] = ''; e sua url não possuirá mais o '/index.php/' Compartilhar este post Link para o post Compartilhar em outros sites
MacX 0 Denunciar post Postado Maio 29, 2012 Opa fala Massaki, Tentei o que você falou mas nao deu certo, o sistema repetiu a URL, ficou assim: "meusite.com.br/meusite.com.br/site/empresa" e a pagina nao apareceu. Fala Gabriel, Eu tentei isso tb, mas aí não visualiza a página: "500 Internal Server Error". Compartilhar este post Link para o post Compartilhar em outros sites
Gabriel Heming 766 Denunciar post Postado Maio 29, 2012 $config['base_url'] = 'meusite.com.br'; // Altere para o nome do seu site Coloque http:// na frente $config['base_url'] = 'http://meusite.com.br'; // Altere para o nome do seu site Já tive esse mesmo problema. Compartilhar este post Link para o post Compartilhar em outros sites
Leozitho 81 Denunciar post Postado Maio 29, 2012 Mude essa linha: $config['base_url'] = 'meusite.com.br'; Para: $config['base_url'] = 'http://meusite.com.br/'; Faltou colocar o protocolo "http" no início do URL e a barra no final. EDIT: Não vi que já tinham respondido. :P Compartilhar este post Link para o post Compartilhar em outros sites
MacX 0 Denunciar post Postado Maio 29, 2012 Boa tarde pessoal, fiz a mudança acima, porém continou a retornar error 500. A URL tinha ficado "meusite.com.br/site/empresa". Depois disso, tentei também tirar o "site" da URL, aceesei o routes.php, e alterei: $route['default_controller'] = "site" para $route['default_controller'] = ""; Aí deu pau geral. Alguma luz? Compartilhar este post Link para o post Compartilhar em outros sites