site returns 404 on every request, except /
Check to make sure that the directory containing Drupal on your server can read the contents of your .htaccess files (the AllowOverride directive in your httpd.conf controls what will be processed). In my experience, AllowOverride None set for that directory or a parent directory is the most common culprit  (remember: directives are inherited).