Site Pre-Launch QA Checklist
- Andrew Mallis
- Mike McCaffrey
- Kristin Sartain
Owned by Andrew Mallis
When launching a site, it's important to go through some general quality assurance tasks to ensure the site is functioning and ready to launch.
Security
- All core and contrib modules updates are applied
- Give the permissions page a once-over for any glaring issues (e.g., anonymous access to "Full HTML" input format or other such silly thing)
- Change the user1 username to something other than "admin"
- Reset the user1 password to something that is definitely secure
- Delete testing accounts
- Make sure that only admins can create new accounts
- Pre-provision the SSL certificates
- Enforce https (in the pantheon.yml file on pantheon)
- Anti-spam protection added to forms
- Comment and contact modules disabled if not necessary
- Check header security issues:Â https://dri.es/headers
Pantheon Hosted
- Make sure the Pantheon APC module is installed:Â https://www.drupal.org/project/pantheon_advanced_page_cache
- Check that Varnish is working on the Pantheon Global CDN
- Make sure SOLR server is connecting, if needed. (not available for basic plan)
- Check the site audit tab in the site dashboard
- Pre-provision the SSL certificates
- Primary domain is set for redirects
- Enforce https in the pantheon.yml
Non-Pantheon Hosting
- Configure Cloudflare
- Set up an external ping to the Drupal cron URL (and then turn off the automated_cron core D8 module?)
Drupal Configuration
- Site email address is correct at /admin/config/system/site-information
- Turn off development modules in production (e.g., via Config Split)
Performance
- Drupal's css and js aggregation enabled
- Page cache maximum age is set to at least 15 minutes at /admin/config/development/performance
- Check the headers to make sure caching is working for properly:Â https://dri.es/headers
- Fast404 module installed (optional)
- Redis for Pantheon environments installed (optional)
- Front End - Page Speed, https://tools.pingdom.com
- Benchmark the site
- New Relic
- Disable themes not in use, even parent themes
Check for errors
- Review Drupal Status Report Page
- Review watchdog entries
- Review pantheon logs
- Review performance in New Relic
- Install the Site Audit module and check for issues (or just check the Status tab for the environment in Pantheon)
External Services
- Google Tag manager has been installed and configured to track Google Analytics (404 and 403 exclusion should be removed from the default configuration so that data goes to analytics).
- External SMTP service has been configured for sending emails (recommended)
- Solr server is configured and working (optional)
SEO
- Domains redirect to primary domain (a dashboard setting in pantheon now)
- Redirects have been created (clone our Redirects Worksheet template for import)
- Wildcard redirects have been added to settings.php
- XMLsitemap module has been configured and a link has been created to:Â /sitemap.xml
- Metatag module has been installed and configured
- Google Console has been registered so the new site can be submitted for reindexing after launch.
Theming
/favicon.ico
resolves via the favicon module or a rewrite rule insettings.php
- 404 Pages are themed
- All large images are being resized using responsive image styles
- Breakpoint indicator is disabled
- Check that we're not loading unused fonts/weights
- Optimize bitmap images: http://optimizilla.com, https://compressor.io
- Optimize SVGs:Â https://jakearchibald.github.io/svgomg/
Launching
- Pantheon DNS Configuration
- Create an annotation in google analytics to demarcate the launch
- Clear caches
- Run cron
- Clear logs before launch
- Back up everything
- Create a tag in git for a clear label
- Announce in Slack
- Deploy the site through Best Practices
Post Launch
- Data is coming into analytics
- Review log for errors
- Review newrelic for performance
- Search is working
Related pages
Pre-Launch Accessibility Quick Checklist
Pre-Launch Accessibility Quick Checklist
Read with this
Wordpress on WP Engine Pre-Launch and Launch Checklist
Wordpress on WP Engine Pre-Launch and Launch Checklist
Read with this
Deployment Best Practices
Deployment Best Practices
Read with this
Testing with Backstop.js inside default Drupal project
Testing with Backstop.js inside default Drupal project
Read with this
Pre-launch and launch related processes
Pre-launch and launch related processes
Read with this