Check that the link is correctly spelled, and that the correct case is used - SOMETHING.HTML is not the same as something.html.
Also, check if file paths are correct. A very common error is to leave the location relative to another computer's filesystem, for example:
The above is not correct as it refers to a file on your PC, not on our servers. File paths should either be absolute, like the example below:
Or relative, eg:
If site.html is in the same directory as the page that it's linking from.
Finally, make sure there are no conflicts with other scripts on your website. Many major CMS's such as Wordpress and Joomla use URL rewriting that will interfere with the correct operation of links.