It could be one of several things. These are just a few:
1) The user's password may have been expired
2) The user's windows account may have been disabled
3) There could be a web part on the site page that is pulling
information from another site that he does not have access to
Some questions to ask:
1) Is the user logged on to the same domain as the SharePoint server?
2) Can the user access other SharePoint sites?
3) Are there others in the Contributors group who are not in any other
groups, and can they access the site?
4) Has the user ever been able to access the site?
The answers to these questions may help point you in the right
direction.