WordPress will throw a 404 not found error, with either a .html or .htm extension for permalink pages if a file of the same name can be found within the web root directory. So, for instance:
* If you create a new wordpress page called ‘contact’, and
* You create an HTML page called ‘contact.html’ within the root directory, then
You will run into this 404 not found error when attempting to visit the wordpress page at:
http://www.example.com/contact
Simply remove or rename the contact file within the root directory and the error will disappear.