A reader named Max posted a suggestion in my book forums that I include a checklist of final steps to take before a Web site goes live (read his post). I don’t know if it’ll make it into a book but it’s a good idea so I thought I’d give it its due here. In this first post I’ll discuss general steps to take, regardless of the technologies being used. In a separate post, I’ll discuss PHP and MySQL specific steps; later, I’ll post for a Ruby on a Rails site.
Once you’ve finalized all the functionality and appearance of a site (or thought you have, at least), you should…Confirm that all links work. You can use automated software that will spider through your site and report any dead links. Using one of these applications, and there are free ones available, is really simple and definitely worth your minimal effort.
Validate all HTML. Use an online HTML validation system to confirm that there are no syntactical problems on any page. This should include pages that are the result of form submissions, with and without errors, etc. Any page that a user may see in any state should be validated!
Test! Test! Test! You’ve already tested your site, right? Lots of times? Have your spouse or significant other or parent or roommate or whomever test it. Have someone less technically skilled than you test it. Retest it yourself, this time with the approach of “What happens if I do this?”, even if what you attempt is something you’d never think anyone would ever try.
Test in multiple browsers on multiple platforms. You don’t have to take all of these steps using multiple browsers on multiple platforms, but you should at least hit some of the key pages so you know that everything looks right. Also keep in mind that IE 6 behaves differently than IE 7 or Firefox 2 vs. Firefox 3. Just testing in the latest version of one browser is not sufficient. To simplify things, consider using a site like BrowserShots.org.
Try to hack your site. Make sure you’ve applied good security measures by doing very, very bad things and making sure nothing horrendous happens.
Have a good “Page Not Found” page. Although it’s best not to have dead links on your site, a truly professional site has a nice “Page Not Found” page that handles any missing pages. It should look like the rest of your site, provide a helpful message as to what happened (i.e., why they’re seeing that page), and provide navigation to the site’s actual pages.
Well, that’s the list I have at the top of my head. I’m sure you have other suggestions and I’d love to hear them!