I have following structure of my project
/system
/applications
/cache
/core
/helpers
/hook
/language
/libraries
/logs
/third_party
/admin-panel
/config
/controllers
welcome.php
dashboard.php
/errors
/models
/views
welcome.php
dashboard.php
/user-panel
/config
/controllers
welcome.php
dashboard.php
/errors
/models
/views
welcome.php
dashboard.php
/admin
index.php
index.php
My index.php inside my project folder has user-panel as my application folder and index.php in admin folder has admin-panel as my application folder.
I have inserted this line $route['default_controller'] = "welcome"; $route['welcome'] = 'welcome'; in routes.php inside both user-panel and admin-panel
I can access welcome controller of my both user-panel and admin-panel by using http://localhost/myproject and http://localhost/myproject/admin
but i cannot access my dashboard controller by using http://localhost/myproject/dashboard or http://localhost/myproject/admin/dashboard
my dashboard controller is accessible by using http://localhost/myproject/index.php/dashboard or http://localhost/myproject/admin/index.php/dashboard
But i dont want index.php included in my url. I want to remove it. I have also tried by using .htaccess inside my admin folder. I write following line in this
RewriteEngine On
RewriteCond $1 !^(index\.php|(.*)\.swf|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]
but this didn't work for me. It give 404 not found CI error. I have also enabled mod_rewrite by changing AllowOerride None to AllowOverride All in httpd.conf. Please tell me what should i do to remove index.php and where should i place my .htaccess files in my project directory.
Have a look in the config.php file, there is a variable named
'index_page'
try changing
to
Be sure of the following :
Open config.php from system/application/config directory
and replace
$config['index_page'] = “index.php” by $config['index_page'] = “”
Create a “.htaccess” file in the root of CodeIgniter directory
and add the following lines.
In some case the default setting for uri_protocol does not work properly.
To solve this problem just replace
by
from system/application/config/config.php
if your root folder for project is not root of domain i.e. your website is subdirectory of a domain
http://localhost/myproject
then you need an additional line in your .htaccess file that isRewriteBase
Also make sure, your config.php is configured as
And mod_rewrite is enable in apache's config file.