Cómo eliminar "index.php" en la ruta de codeigniter
¿Cómo elimino lo "index.php"
que sobresale en cada ruta en CodeIgniter en algún lugar del centro? ¿ Quiero limpiar no index.php-fied URLs
?
Si está utilizando Apache, coloque un archivo .htaccess en su directorio web raíz que contenga lo siguiente:
RewriteEngine on
RewriteCond $1 !^(index\.php|[Javascript / CSS / Image root Folder name(s)]|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
Otra buena versión se encuentra aquí:
http://snipplr.com/view/5966/codeigniter-htaccess/
Tuve algunos problemas importantes al eliminar index.php. Como regla general, el siguiente .htaccess ha sido probado en varios servidores y generalmente funciona:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
<Files "index.php">
AcceptPathInfo On
</Files>
Si no tiene suerte con eso, el siguiente paso es ajustar su archivo de configuración. Pruebe algunos de los otros protocolos URI, por ejemplo
| 'AUTO' Default - auto detects
| 'PATH_INFO' Uses the PATH_INFO
| 'QUERY_STRING' Uses the QUERY_STRING
| 'REQUEST_URI' Uses the REQUEST_URI
| 'ORIG_PATH_INFO' Uses the ORIG_PATH_INFO
$config['uri_protocol'] = 'ORIG_PATH_INFO';
Si aún no tienes suerte, intenta cambiar la regla de reescritura para incluir tu subcarpeta. Esto suele ser un problema si usas una URL temporal en un servidor de desarrollo, etc.:
RewriteRule ^(.*)$ /subofolder1/subfolder2/index.php/$1 [L]
Simplemente juegue con estas opciones, una debería funcionar. Además, asegúrese de que su archivo de índice esté configurado en:
$config['index_page'] = '';