The question is a bit tricky. Whois is normally a good place to start as it gives you a feel for the site, including the nameservers which, if often, but not always give you a hint about the hosting provider.
In order to work out where a site is located, you need to get its IP address. This is as easy as doing a "ping" to the site. Even better, if you use traceroute it will show you all the hops between your computer and that site - and usually the hops immediately before will give you a clue of their ISP's router. Importantly, using traceroute will do a reverse lookup on the domains and this will help you work out who their ISP is. You can then google the results to try and find a contact detail for their domain name.
Another technique might be to look and see how mail is handled for the site, and see if there is a link (again, not always). To do this you need to do a DNS lookup for the MX record for the site. (Googling "MX Lookup") should help you come up with a tool for this. If they are farming their mail out to an ISP, you should be able to do a WHOIS to find more about the ISP and contact them.