If we dont use mod rewrite then the URL would be like this

http://localhost/project_folder/index.php/controllerName/functionName

So its better to remove index.php part from the URL and make it like
http://localhost/project_folder/controllerName/functionName

Follow these steps to get this done

Uncomment the line in httpd.conf (Just remove #)
LoadModule rewrite_module modules/mod_rewrite.so


change setting in config.php
$config['base_url']	= 'http://localhost/mcbUpgrade/';

$config['index_page'] = '';

$config['uri_protocol'] = 'QUERY_STRING';


then add a .htaccess file into teh root
Tehn copy and paste the following code into that file
<IfModule mod_rewrite.c>

RewriteEngine On

RewriteBase /



#Removes access to the system folder by users.

#Additionally this will allow you to create a System.php controller,

#previously this would not have been possible.

#'system' can be replaced if you have renamed your system folder.

RewriteCond %{REQUEST_URI} ^system.*

RewriteRule ^(.*)$ /project_folder/index.php?/$1 [L]



#When your application folder isn't in the system folder

#This snippet prevents user access to the application folder

#Submitted by: Fabdrol

#Rename 'application' to your applications folder name.

RewriteCond %{REQUEST_URI} ^application.*

RewriteRule ^(.*)$ /project_folder/index.php?/$1 [L]



#Checks to see if the user is attempting to access a valid file,

#such as an image or css document, if this isn't true it sends the

#request to index.php

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ /project_folder/index.php?/$1 [L]

</IfModule>



<IfModule !mod_rewrite.c>

# If we don't have mod_rewrite installed, all 404's

# can be sent to index.php, and everything works as normal.

# Submitted by: ElliotHaughin



ErrorDocument 404 /index.php

</IfModule>