It is very annoying when you try to develop a new application in Codeigniter, but your environment is misconfigured. It often happens when I install a new instance of WAMP Server and it have a default configuration.

A very common problem with Codeigniter is that index.php must be present in url to run your controller code e.g:
http://loclahost/codeigniter_project/index.php/welcome/
so it is not a very nice loking and we would prefer something like this:
http://loclahost/codeigniter_project/welcome/
So what’s the sollution ? – Propperly configure ModRewrite

This is step by step sollution, how to configure WampServer to propperly run CodeIgniter:

1.  Edit httpd.conf to turn on the Rewrite module in Apache server:
Uncomment line: LoadModule rewrite_module modules/mod_rewrite.so and restart Apache.

2. Add .httaccess file to your codeigniter_project root folder:
Create new file with name .htaccess and add
RewriteEngine on
RewriteBase /codeigniter_project
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L]

But rememer Rewritebase should be everything between your domain and controller without trailing / e.g.:
http://loclahost/codeigniter_project/welcome/
3. (Additional step) Be sure your $config[‘index_page’] in codeigniter_project/applicaton/config/config.php is set to
$config[‘index_page’] = ‘’;