Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to remove controller name from url making it clean in codeigniter

I have the following url..

http://localhost/ci/site_controller/home

I want to remove site_controller controller from url resulting in..

 http://localhost/ci/home

How can I do this in CodeIgniter ?

Note: If you'll ask what I've tried than I've just done searching over Google as I don't know how to use mod_rewrite.

EDIT

I have this in my routes.php

$route['default_controller'] = "site_controller/home";
$route['ci/home'] = 'ci/site_controller/home';
$route['404_override'] = '';

but still not working!

.htaccess

RewriteEngine On
RewriteBase /ci/
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php/$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

ErrorDocument 404 /index.php
like image 668
Yousuf Memon Avatar asked Oct 12 '12 16:10

Yousuf Memon


1 Answers

You can set your a route for each url:

In your config/routes.php file, just set each page like this:

$route['ci/home'] = "ci/site_controller/home";
like image 102
Catfish Avatar answered Oct 10 '22 21:10

Catfish