It's a beautiful Friday afternoon in July and you just launched a 3-month-long web project. Ready for the weekend! That is, until you get an email Saturday morning that dozens of broken links were discovered, and the website "looks weird" in IE 10.
There goes your weekend.
You can avoid these kinds of surprises by keeping a "Go-Live Checklist" handy and making it a rule to run through the checklist before launching a new site. Below are some of the most important things to check before you flip the switch.
- Broken Links
I've always liked Xenu's desktop software solution for this. It's free and does a good job.The W3C offers a link checker as well, but I haven't found it to be quite as complete as Xenu's.
- Cross-browser Consistency
That's right, checking that your site looks awesome in Chrome, Safari, FireFox and IE 9/10, pretty darn good in IE 8, and acceptable in IE 7.The best way to do this is to start with a CSS Reset, then use browser-specific hacks as needed.
- Setup Caching Directives
It typically makes sense to cache CSS, JavaScript, images and some other types of content in the visitor's browser cache. This can have a remarkable effect on page load. Google's Page Speed recommends setting an expiration period of at least a week for cached objects.If you're using Apache, here's a real quick guide on setting up browser caching.
- Confirm Page Speed
We brought up page speed in #3 above. Google has identified dozens of factors that affect the page load time of a site, and was nice enough to build a tool for us to measure these factors.The PageSpeed tool comes in a variety of forms including an online form, browser extensions, Apache modules and a service.
We also have a quick setup guide for the PageSpeed Apache Module.
- Create a Favicon
Yes, that little 16×16 icon in your browsers tab or title bar. Browsers will request a favicon.ico from the root of your website by default. So if you don't have one, you'll notice quite a few 404 Not Found errors in your logs.You can generate a favicon online using your company logo.
- Check for invalid HTML
Browsers are total pushovers when it comes to displaying invalid HTML. They'll do whatever they can to turn your ugly, non-compliant HTML into a beautifully rendered website!But, invalid HTML means a lower SEO score, not to mention issues modifying the DOM with JavaScript.
The W3C comes to our rescue again with an online HTML validator.
- Check all secure pages
You've seen that error before, the one that reads, "Only secure content is displayed, show all content?". That's scary to a user. It happens when a user visits a page via a secure URL (https), but the page has references to resources that are not at secured URLs.Check your secure pages with your browser's developer tools console, it will flag any resources which are not secured.
- Test with Quotes
I can't tell you how many times I've discovered issues with form submissions or AJAX requests simply because there was a single quote character in one of the fields.Be sure to test your forms and any requests that involve JavaScript with data that includes single and double quote characters.
I'd bet that the most common source of JavaScript quoting errors comes from contact name fields, where the user's last name contains a single quote.
- Add Analytics & Setup Google Webmaster Tools
How angry would your client be to find out that two months after launch, there are absolutely no website usage statistics. You want analytics in place from the very second that you launch the site.Although not as important as having Analytics right away, adding your site to Google's Webmaster Tools is a great way to keep pace with issues that happen on your site, as well as stay informed on how Google is ranking your content.
- Avoid duplicate content
You've no doubt heard by now that duplicate content is bad. Not only is it difficult to track in your analytics tool, but search engines really don't like it.These three links, although all referencing the same page on your server, are seen as three different pages to search engines.
http://www.example.com/mylandingpage
http://www.example.com/mylandingpage/
http://example.com/mylandingpageThese two snippets offer examples:
Apache Add trailing slash to all URLs
Apache Redirect non-www to www