shout-out

Arpatech is now SOC 2 Type 2 Compliant.

Learn More
header_web_logo


pre-launch-checklist-drupal
  • Industry: Web Development
  • Timeline: Jan 24, 2017
  • Writer: Saima Naz

The Ultimate Drupal Prelaunch Checklist for Developers

There’s a saying that “Think before you speak”. Similarly, test before you launch. Website testing is a necessary step that every developer should take seriously. Cross-browser testing, checking for dead links, and proofreading are just some of the things that need to be done before making a site live. Teams offering reliable Web App Development Services always follow a solid pre-launch checklist to make sure every aspect of the site is working perfectly before it goes live.

Website testing is a necessary step to take. Cross-browser test­ing, check­ing for dead links, and proofreading are the things that should get tested before making the site live.

Key Takeaways:

  • Launching a Drupal website requires more than completing development and design tasks.
  • A comprehensive pre-launch checklist helps ensure security, performance, SEO readiness, and content accuracy.
  • Key areas include server configuration, permissions, caching, error handling, and search engine optimization.

Some of the recommendations of the Drupal Pre-launch Checklist for developers are:

Server Configuration

Configure Cron:

Drupal does have an extendable number of Cron jobs that are scheduled to run at different intervals; some of them are to re-index the search mechanism, and some are to check for updates. You can make custom modules in Drupal just like other CMS with their defined Cron jobs.

These Cron jobs can vary from searching the lat­est Twit­ter feeds to pro­cess­ing mes­sage queues. Without doing Cron jobs, you can run your site, but I would highly recommend that this will allow your site to maintain security by using the Update Status module.

If you can go through the official documentation, you can see the whole process of setting up a Cron job, or else have a look at Poor Man’s Cron. It is a functionality offered in Drupal 7, which is a simple backport of automatic Cron-running functionality.

Check The Upload Sizes & Execution Time:

If you want to allow users to upload large files such as MP3 and MP4 files on your site, then make sure to configure the server first. Allow your server to upload up to an approximate size.

And not just uploading, take a look at the max_execution_time setting also. This time setting will increase if you are uploading large files.

Check Recipient Email Addresses:

Before launching the Drupal site, first make sure to double-check that all the forms, modules, and other things are sending to the correct email addresses. Most developers forget to update these; once the site is ready, change your own addresses to the client’s.

Secu­rity

Set The File Permissions:

Security is the first concern of any website, so before launching your Drupal site, make sure that you correctly configure the security permissions on your file systems. This would help in securing your site from any malicious hackers. Make sure that all files are saved in their particular folders, and also ensure that the settings.php file, which contains all the information about database connections, is also secured.

Make sure that, to facilitate uploading functionality, your files directory needs to be writable by the web server. We would recommend that you ensure that your installation is configured with access to a writable temporary directory. To check the whole process of how to give files permissions and ownership and how to set up the files directory, check these two official documents.

Pro­tect Your Root Account:

Typically during Drupal development, you have to develop your site using an admin account. Make sure to secure that account. This account has all the information and access to your website. And not just the access, but the havoc which could be wrecked by a hacker get­ting access to this account, which the network security is not permitting, and to be carried out using a web browser.

While building the admin account, choose a secure admin account username instead of just choosing admin; make something difficult to guess. Also, make sure that the password is secure enough. You can use a Drupal module named  AES so that you can tighten up the security more.

Check Per­mis­sions:

Some of the new modules introduce new kinds of permissions that are restrictive. These types of permissions have to be manually enabled for many other roles. These include anonymous, registered, or custom. One of the main advantages is that only the root user can access the part of the site, but not a regular user, hence more security. Before launching, it is highly recommended that you test the site with each role.

Turn Off Error Reporting:

Ever witnessed any error messages on Drupal live sites? I have seen them often. These errors are not only Drupal-specific messages. Drupal renders many PHP errors.  You have options to either display them or not.

To configure them, go to Site Configuration -> Error Reporting. Now set the option of the same name to write errors to the log. Doing so will not display errors.

Error Han­dling

Han­dle 404 Errors Gracefully:

Before launching, make sure that the 404 errors (or missing pages) are catered to as helpfully as possible. There is a built-in feature of Drupal in which an error handling page is displayed on pages where there is no block configured. For that, you can use a Drupal module named Search 404, or you can use a 404 block. This module guesses what the user wants or what the user tries to search. It helps the user by feeding terms from the URL into the search engine.

Search Engine Optimization

Check Robots.txt:

Don’t forget to check robots.txt before launching. And even before that, ensure that the rel­e­vant sec­tions of your new site are excluded from crawlers. To further understand, see the documentation on the Drupal official site.

Com­bine Pathauto With Global Redirect:

First, install a module called Global Redi­rect with an existing module, the Pathauto mod­ule. You should use these modules on your Drupal site to generate “friendly” URLs auto­mat­i­cally. It works by performing a 301 redirect to an aliased path or by analyzing a vis­ited link.

You must be thinking, why is this impor­tant? The answer is really simple: if a sin­gle page is acces­si­ble from mul­ti­ple URL’s, for instance, contact-us is an alias for node/123, and some other user vis­its node/123 directly, what Drupal will do is that it will redi­rect back to the contact-us page on your site. By doing so, it can negatively impact neg­a­tively on your search ranking.

Main­te­nance

Cre­ate A Main­te­nance Page:

Make a custom maintenance page for the users who would visit your site during the time when you are upgrading or maintaining your site. Make it more user-friendly and professional. It’s pretty easy to create a cus­tom main­te­nance page from Dru­pal 6 onwards. Check out official documentation for further information on theming the Drupal 6 maintenance page.

Per­for­mance

Configure Caching:

Caching is the most important part. Before you launch, check whether your site’s caches are fully configured. By doing so, Caching will deliver sig­nif­i­cant per­for­mance boosts, par­tic­u­larly on high-traffic sites. Make sure to check if the Views module has cached any pages or blocks, because they are switched off by default. Make sure to configure them as well.

Con­fig­ure Css And Javascript Optimisation:

You can compress the CSS and JavaScript files by switching them on at the end of the development process, which is usually turned off during the entire process. Having more CSS and JavaScript files means increas­ing the num­ber of HTTP calls for every page sig­nif­i­cantly. You can “squeeze” all the CSS and JavaScript files. To do so, compress­ them at the same time.

Con­tent and Publishing

Check Unpub­lished Con­tent Is Not Visible:

Normally, a developer forgets to check the sta­tus of a node before dis­play­ing any custom code for creating a view. That is why draft work could appear after you launched the site. So make sure to check that by checking the fil­ters on your views. Check that any cus­tom SQL includes a test of the sta­tus column.

Check Your RSS Feed:

RSS feed of your content is generated by default on your Drupal site, which includes the feeds for your tax­on­omy terms. You could use the Views RSS module in Drupal; this module allows tighter control over what content or stuff should go into your RSS feed. It is critical to take care of that because, in Drupal, the published nodes are promoted to the front page by default.  You can deny this access to rss.xml whenever needed.

Check Your Favicons:

If your sites have a favicon, then make sure that it’s dis­play­ing cor­rectly. If it’s not, then you have to unselect the option for Drupal’s default fav­i­con in your theme settings to display on your site.

Site Mon­i­tor­ing

Con­fig­ure Statistics:

Not only is the security and reliability of a site a big concern, but monitoring is also a big job to do. You can use the core statistics module to do the job. Using the Advanced Sta­tis­tics set­tings com­pan­ion mod­ule, or using any ser­vice such as Google Ana­lyt­ics to monitor site usage, is a better option.

Conclusion:

Launching a Drupal website without a thorough review can lead to security vulnerabilities, performance issues, and missed optimization opportunities. By following a comprehensive pre-launch checklist, developers can ensure that every aspect of the website is configured for reliability, usability, and long-term success. Don’t navigate your Drupal project alone. Arpatech has the expertise to build and launch a website that truly performs. Make it happen