title: 404 error while trying to access codeigniter url's without index.php
body: <p>Hi i recently changed my hosting to AWS. I created an instance and hosted my website and trying to access it same like old hosting. But i am not able to access it when i tried to access inner pages without index.php in the url. But if i used index.php it's working fine. I tried different configurations in .htaccess file. </p>
  
  <pre><code>RewriteEngine on
  RewriteCond %{HTTP_HOST} !^www\. [NC]
  RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ /index.php?$1 [L]
  
  
  &lt;IfModule mod_expires.c&gt;
    ExpiresActive on
  
  # Your document html
    ExpiresByType text/html "access plus 0 seconds"
  
  # Media: images, video, audio
    ExpiresByType audio/ogg "access plus 1 month"
    ExpiresByType image/gif "access plus 1 month"
    ExpiresByType image/jpeg "access plus 1 month"
    ExpiresByType image/png "access plus 1 month"
    ExpiresByType video/mp4 "access plus 1 month"
    ExpiresByType video/ogg "access plus 1 month"
    ExpiresByType video/webm "access plus 1 month"
  
  # CSS and JavaScript
    ExpiresByType application/javascript "access plus 1 year"
    ExpiresByType text/css "access plus 1 year"
  &lt;/IfModule&gt;
  </code></pre>
  
  <p>Right now my config file configurations are like this below.</p>
  
  <pre><code>$config['base_url']     = 'http://www.cofounder.in/';
  
  /*
  |--------------------------------------------------------------------------
  | Index File
  |--------------------------------------------------------------------------
  |
  | Typically this will be your index.php file, unless you've renamed it to
  | something else. If you are using mod_rewrite to remove the page set this
  | variable so that it is blank.
  |
  */
  $config['index_page'] = 'index.php?';
  
  /*
  |--------------------------------------------------------------------------
  | URI PROTOCOL
  |--------------------------------------------------------------------------
  |
  | This item determines which server global should be used to retrieve the
  | URI string.  The default setting of 'AUTO' works for most servers.
  | If your links do not seem to work, try one of the other delicious flavors:
  |
  | 'AUTO'                        Default - auto detects
  | 'PATH_INFO'           Uses the PATH_INFO
  | 'QUERY_STRING'        Uses the QUERY_STRING
  | 'REQUEST_URI'         Uses the REQUEST_URI
  | 'ORIG_PATH_INFO'      Uses the ORIG_PATH_INFO
  |
  */
  $config['uri_protocol'] = 'AUTO';
  </code></pre>