If something was working, but now it's broken, then something changed.
Many things are the same, some are different.
This is true with anything: your watch, a remote control, even your relationships. It's certainly true with websites. If your website used to work fine, but now it won't load, then something changed. To fix it, you need to figure out what that thing was.
Pretty obvious? Sure, if everything is working great for you right now. But the minute something breaks, it's really easy to get into the WELL EVERYTHING WAS WORKING FINE YESTERDAY mode.
What could it have been?
- Has any new software been installed?
- Has any code changed?
- Have you asked everyone with access to it?
- Is your allowed disk space full? Maybe something you don't often think about was filling it, like server logs.
- Did any file permissions change?
- How is incoming traffic? Major spike? Are you watching analytics? More traffic means more server resources, so you'll need to watch things like your memory usage.
- Is your database server responding properly? Is your database itself in good condition?
- Did anything change with your web host?
- Is your domain registration up to date?
- Is the DNS server you use responding properly?
- Is there a chance you were hacked?
I once had a conversation with a Joyent employee who said that in the overwhelming majority of cases, a website was down because of something the user did, not the hosting. But still, I think a good host will help you figure out what the problem is if it is their fault or not.