Before you start, make sure the Apache rewrites module is enabled and then follow the steps given below.
1) Log-in to your Magento administration area then go to System >
Configuration > Web.
2) Navigate to the Unsecure and Secure tabs. Make sure the Unsecured and Secure - Base Url options have your domain name within it and do not leave the forward slash off at the end of the URL. Example: http://www.yourdomain.co.uk/
3) While still on the Web page, navigate to Search Engine Optimisation tab and select YES underneath the Use Web Server Rewrites option.
4) Navigate to the Secure tab again (if not already on it) and select Yes
on the Use Secure URLs in Front-End option.
5) Now go to the root of your Magento website folder and use this code for your .htaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Save the .htaccess and replace the original file. (PLEASE MAKE SURE TO
BACKUP YOUR ORIGINAL .htaccess FILE BEFORE MESSING WITH IT!!!)
6) Now go to System > Cache Management and select all fields and make sure
the Actions dropdown is set on Refresh, then submit. (This will, of course, refresh the Cache.)
If this did not work, please follow these extra steps.
7) Go to System > Configuration > web again. This time look for the
Current Configuration Scope and select your website from the drop-down menu. (This is, of course, set to Default Config)
8) Make sure the Unsecure and Secure fields contain the same domain as the previous Default Config file.
9) Navigate to the Search Engines Optimisation tab and select Yes
underneath the Use Web Server Rewrite section.
10) Once the URLs are the same, and the rewrite is enabled, save that page. Then, go back and make sure they are all checked as default, then save again if needed.
Now your index.php problem should be fixed.
system > configuration > General > Web > Search Engines Optimization
– rob3000 Oct 14 '15 at 3:32