Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

CodeIgniter | .htaccess removing index.php from url

ok, i did exactly as asked in the documentation of codeigniter, created new file .htaccess

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

i am using xampp, so my url for accessing the site was

http://localhost:12/projects/zorkif_nextgen/index.php/main

now after applying the above .htaccess file, i tried it without index.php like this

http://localhost:12/projects/zorkif_nextgen/main

but instead of working, it is redirecting me to this url

http://localhost:12/xampp

How to resolve this issue?

plus i am getting error on my page after trying the .htaccess

on top of page message is appearing,

 Error Occured.
Warning!. Make sure you perform the correct action.
The Action has been completed Successfully. 

Edit:

Here is some of my config.php file settings

$config['base_url'] = '';
$config['index_page'] = 'index.php';
$config['uri_protocol'] = 'AUTO';
$config['url_suffix'] = '';
$config['enable_hooks'] = FALSE;
$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-';
$config['allow_get_array']      = TRUE;
$config['enable_query_strings'] = FALSE;
$config['controller_trigger']   = 'c';
$config['function_trigger']     = 'm';
$config['directory_trigger']    = 'd'; // experimental not currently in use
$config['sess_cookie_name']     = 'zk_ci_session';
$config['sess_expiration']      = 7200;
$config['sess_expire_on_close'] = TRUE;
$config['sess_encrypt_cookie']  = TRUE;
$config['sess_use_database']    = TRUE;
$config['sess_table_name']      = 'sys_ci_sessions';
$config['sess_match_ip']        = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update']  = 300;
$config['csrf_protection'] = TRUE;
$config['csrf_token_name'] = 'csrf_test_name';
$config['csrf_cookie_name'] = 'csrf_cookie_name';
$config['csrf_expire'] = 7200;
$config['rewrite_short_tags'] = FALSE;
like image 299
Sizzling Code Avatar asked Mar 11 '13 22:03

Sizzling Code


2 Answers

this is works well for me:

1- create .htaccess file in the root folder with the following content

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

2- from the config file change $config['index_page'] = 'index.php'; to $config['index_page'] = '';

like image 169
Mohamed Nagy Avatar answered Sep 19 '22 15:09

Mohamed Nagy


Try defining the RewriteBase to /projects/zorkif_nextgen

RewriteBase /projects/zorkif_nextgen
like image 45
DaneoShiga Avatar answered Sep 22 '22 15:09

DaneoShiga