Como remover o index.php no CodeIgniter
É muito comum que após a instalação do CodeIgniter o programador queira remover o index.php, pois a URL não fica muito agradável de se ver e também para os motores de busca. Veja neste nosso post de hoje como remover o index.php no CodeIgniter.
Como remover o index.php no CodeIgniter
O primeiro passo é criar um arquivo na raiz do seu site chamado .htaccess.
Dentro deste arquivo você vai colocar o seguinte código:
RewriteEngine on RewriteCond $1 !^(index.php|images|robots.txt) RewriteRule ^(.*)$ /index.php/$1 [L]
O que este código faz é basicamente redirecionar para a raiz (/) todas as requisições que neste caso não tenham as palavras: images e robots.
Porém, uma dica muito importante: esta regra acima só vale se o seu codeigniter estiver instalado na raiz do seu site.
Caso você o tenha instalado dentro de algum diretório, você deve mencionar este diretório no código.
Vamos supor que você tenha instalado o codeigniter dentro da pasta loja. Então, o código dentro do .htaccess deverá ficar assim:
RewriteEngine on RewriteCond $1 !^(index.php|images|robots.txt) RewriteRule ^(.*)$ /loja/index.php/$1 [L]
O que estou dizendo é que tudo que for diferente de images e robots seja redirecionado para o endereço /loja/.
Esta é uma dica bem valiosa que às vezes esquecemos de colocar e nos dá uma dor de cabeça bem grande, principalmente para quem está começando.
O post de hoje foi curto, mas muito útil espero.
Até o próximo post.