Eliminar el index.php de las URLs de CodeIgniter

En CodeIgniter tenemos la posibilidad de eliminar el index.pho de las URLs y con esto volver aún mas amigables y “limpias” las direcciones de las páginas de nuestra aplicación sobre la cual estamos trabajando, los pasos son los siguientes:

a) Verificar que tenemos activado mod_rewrite en el servidor web Apache.

Dicho modulo se encarga de construir una URL alternativa para nuestras direcciones dinámicas de tal forma que se vuelvan mas legibles y mejor indexadas por los buscadores, se apoya en un conjunto de reglas las cuales se almacenan en un archivo de configuración conocido como .htaccess.

b) Colocar en la raiz de nuestro proyecto un archivo .htaccess con el siguiente contenido:

Options +FollowSymLinks
Options -Indexes
DirectoryIndex index.php
RewriteEngine on
RewriteCond $1 !^(index\.php|images|styles|scripts|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]

c) Abrir el archivo application/config/config.php y remover el valor a la variable de configuración index_page:

$config['index_page'] = '';

Listo, ahora prueba accediendo a tu aplicación omitiendo index.php en tus URLs:

Por ejemplo si antes utilizabas:

http://tudominio.com/aplicacion/index.php/clientes/registro

Ahora utiliza:

http://tudominio.com/aplicacion/clientes/registro

Fuentes:
http://codeigniter.com/user_guide/general/urls.html

Acerca de Moycas
Developer Web @moycc

4 Responses to Eliminar el index.php de las URLs de CodeIgniter

  1. andres dice:

    Otra forma es colocar estas lineas en el .htaccess

    RewriteEngine on
    RewriteCond $1 !^(index\.php|images|robots\.txt)
    RewriteRule ^(.*)$ /index.php/$1 [L]

    mas información

    desarrollolibre.net/blog/tema/2/codeigniter/quitar-el-indexphp-de-la-url-en-codeigniter

    • Moycas dice:

      Hola Andrés, gracias por el comentario y compartir otra solución distinta a la que se plantea en este espacio, voy a probar lo que indicas, saludos!

  2. Pablo Dante dice:

    Hola buen día.
    Intenté reproducir los dos ejemplos y no consigo quitar el “index.php”.
    Es más cambié algunas llamadas desde el httpd.conf del Apache y nada !!??😦
    Alguna sugerencia que me puedan brindar!!!
    Gracias

    • Moycas dice:

      Hola Pablo, yo segui todas las instrucciones tal como tengo publicado el post y si funciona, revisa si no se te está escapando algun detalle. Saludos.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: