Question: I've just moved a Joomla 1.7 site to a new server.

Administration back-end works fine. Configuration.php seems fine. Get "The requested document was not found on this server." for every page other than Home.

Must be talking to the database OK or I'd get an error. Could this be a problem with the PHP?

Thanks,

Andy

Answer: 
* Did you clear joomla cache ?
* Disable page and/or module caching.
* Disable any plugin that optimizes "loading speed".
* Try removing SEF URLs (Joomla! and any 3rd party extension).
* If you are using a custom .htacess, then use an unmodified joomla one.
* Disable some system plugins.
* Disable modules in the homepage.
* Have you tried using another template (site) ?
You have Seach Engine Friendly URLs enabled in /administrator/ area's global configuration settings. You have probably enabled the option to use the mod\_rewrite function which removes the /index.php/ portion of the urls.

It is a requirement of this mode that you have the .htaccess file in place in the root of your site. You probably had this correctly configured on your development server but perhaps forgot to move the file across when you went live. Some FTP programs hide dot files (files starting with a leading dot in the filename) so depending upon how you transferred the files (I'm guessing manually with FTP rather than Akeeba backup or similar) the file may have been missed. Look through your FTP client's options/preferences for an option to show/hide hidden files.

Failing this - the file could be correctly in place - but if you were developing in a sub-folder on your development server you would have set the RewriteBase line to your /sub-folder/

```
RewriteBase /sub-folder/

```

Now you've moved to the live server this line could be incorrect. If this is the case, edit the file to Read 

```
RewriteBase /

```

Chances are it is one or other of these issues - missing .htaccess file or incorrect RewriteBase. A third and nowadays somewhat more unlikely option is that your server doesn't have mod\_rewrite enabled - but I think that would result in server 500 errors.