Solution 1
Create a file called .htaccess, paste the following code into the document and upload to your server at the root web directory.
RewriteEngine on
RewriteCond $1 !^(index\.php|public|user_guide|robots\.txt)
RewriteRule ^(.*)$ /index.php?/$1 [L]
NOTE: The previous solution also works for ICDSoft hosting.
Solution 2
1. Open system/application/config/config.php
2. Set
$config['index_page'] = "";
3. Set
$config['uri_protocol'] = "REQUEST_URI";
4. Add this .htaccess file to your server root (or in the folder where your files are located). Be sure to change the RewriteBase to match your folder location:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /rbs/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ 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>
