1. Permalinks : If sites inner pages are showing 404 error you need to check permalinks in setting.
2. .htaccess files: If you want to use SEO friendly URL you must have .htaccess file in root of your website.
3. While moving site one server to another : Sometime while you moving site another server, Inner pages don’t work. then you just have to do following simple hack.
Goto Permalinks set default and save then refresh site. again goto Permalink choose any other (SEO friendly). It will work fine.
4. Permission : Make sure you had a correct folder permission in site. Files should had 644 and folder should had 755. Also rewrite module in apache must be enable.