I've started work on a site that's already live so I've..

  • Copied all the files to my local machine and imported the .sql file into MAMP

  • Adjusted the 'URL to the root directory of your site' under the 'General Configuration'

  • Adjusted the 'URL to your "themes" folder' under the 'General Configuration'

  • Adjusted the 'Theme Folder Path' under the 'General Configuration'

  • Adjusted the 'Basepath to Template File Directory' under 'Global Template Preferences'

  • Updated the following paths in database.php

Like so...

$db['expressionengine']['hostname'] = 'localhost';
$db['expressionengine']['username'] = 'root';
$db['expressionengine']['password'] = 'root';
$db['expressionengine']['database'] = 'clients_site';

The home page (localhost/) loads fine with the correct CSS and Images and the Control Panel (localhost/admin.php) loads fine but when I go to any internal pages (localhost/about/) I get a 404.

Is there something I've missed out?

  • I'm so glad you posted this question - it was driving me crazy!!!!
    – Dan
    Dec 16, 2014 at 11:58

2 Answers 2


You should try localhost/index.php/about. If you want index.php removed, refer to the documentation.


If you are able to get to admin and it load fine, your db is just fine. ExpressionEngine needs the index.php file to run properly, unless you hide it via the .htaccess.


Check for an .htaccess file in the root folder online and stick it in your local root.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.