admin-plugins author calendar category facebook post rss search twitter star star-half star-empty

Tidy Repo

The best & most reliable WordPress plugins

WordPress Best Practises on AWS

WordPress Best Practises on AWS

Ashley Lipman

November 7, 2018 (modified on August 13, 2019)

Blog

WordPress powers a good chunk of the internet. Over 20 million websites, to be specific, use WordPress. As an open source blogging platform turned into a content management system (CMS), there isn’t much WordPress can’t do. However, this same collaborative workspace also makes this CMS system prone to attack, and it takes work to secure your website.

Using WordPress on Amazon Web Services (AWS) means more administrative control. As a website owner, you know the importance of uptime, a fast server, and security. That’s why so many webmasters are turning to AWS for their WordPress solutions. Want to learn & enhance your AWS skills? Learn AWS from industry experts through Intellipaat AWS Training.

Understanding WordPress

First, let’s take a look at WordPress and what makes it unique. The first version of WordPress was released in 2003, and it wasn’t built with cloud-based infrastructure in mind. The web application itself is built with PHP and uses the MySQL server as a database backend. However, it’s capabilities are rapidly expanding and nowadays WordPress power millions of blogs and high-traffic websites.

Now, WordPress and AWS are starting to join hands on many projects. We’re seeing the WordPress architecture taken to new heights to utilize AWS and more. Through the AWS Management Console, it’s easy to install WordPress and be up and running quickly.

Why use AWS over a shared hosting server? For some webmasters, shared servers just don’t cut it. Unless you’re using a dedicated VPS hosting built for top performance, you’ll likely be left wanting more. There are a lot of alluring features that lead webmasters to use AWS for their WordPress self-hosting. Traditional shared hosting is convenient, but it comes with some downfalls like low up-time, slow response rates, and less security.

WordPress Amazon Web Services

On the other hand, because AWS is cloud hosting, it doesn’t come with many of the constraints of shared hosting. It’s easy to scale if you experience traffic spikes, and you only have to pay for what you use. It’s also relatively easy to install, though managing it is more complicated if you don’t have server experience. The bigger your website is, the more effective it is to use AWS hosting compared to traditional options.

Tips and Best Practices

Now that we’ve established why you have a lot to gain from transitioning your website to AWS, let’s talk about the best practices. It’s true that setting up your WordPress website through AWS takes a lot more time than a traditional host, but don’t be discouraged. There are easy-to-follow guides that can walk you through the necessary steps.

Enable an SSL Certificate

Unlike traditional hosts, AWS doesn’t include cPanel on the server. You can buy this license and install it yourself, or you can just handle your own managing depending on your comfort level. However, you’ll need to make sure your server is secure by installing an SSL certificate. This is when your URL will start with HTTPS:// compared to HTTP://. It means you add an encrypted layer to your website which is something Google appreciates.  

If your website accepts payments, it’s best to purchase a paid certificate through a company like RapidSSL for higher level security. However, if you’re not accepting any payments on your website, you can use the Let’s Encrypt free SSL certificate.

With Let’s Encrypt, the easiest way to generate the SSL certificate is through the Certbot client. Certbot has in-depth guides depending on your operating system.

Once you’ve generated your SSL through Certbot, your next step is to change your internal WordPress links to HTTPS. The best way to do this is through the Better Search-Replace plugin which allows you to change the domain name in the WordPress database. Finally, Let’s Encrypt SSL is only valid for 90 days. That means you’ll need to renew it in 3 months to avoid expiration. You can either repeat the steps above every 90 days or configure a cron job to do it for you.

Utilize Load Balancer for Scaling

Scalability is one of the most essential parts of running a successful website today. With the most common AWS server, LightSail, it’s hard to bring your website to the next level if you’re not sure where to begin. Because it’s inexpensive to start with LightSail, it’s easy to reach the server limit quickly.

If your goal is vertical scaling or adding more RAM or Bandwidth to accommodate more traffic, you can use LightSail’s built-in instance feature:

  • First, go to your LightSail Panel and click manage for the instance you’re trying to scale vertically.
  • Click Snapshot and create an instant snapshot. This is a type of backup.
  • From here, you can create a new instance with that same snapshot.
  • Finally, attach the static IP of your website to your new instance, and verify your website to make sure everything looks good.

If you need to do some horizontal scaling, you’ll need to undergo a bit more planning. This is where the AWS Load Balancer comes in. Once your new servers are in place, you can use a Load Balancer to keep everything running smoothly. You can access this from your AWS LightSail home screen in the Networking Tab under Load Balancer Location. Choose your location and enable HTTP or HTTPS.

Load Balancer for Scaling

Monitoring with CloudWatch

Logging is an essential way to keep your website running smoothly. Errors and load problems can quickly damage your reputation as a reliable platform. Amazon CloudWatch logging and monitoring allow real-time monitoring of AWS resources like EC2 instances, elastic block store volumes, load balances, and more. These metrics help check for memory usage, transaction volumes, and errors. Logging through a system like Amazon CloudWatch is an important part of securing your website and preventing problems.

Offload Static Content

If you have content that’s slowing down your website like images, it’s time to offload. With Amazon S3, also known as Amazon Simple Storage Service, you can offload static content that might be weighing down your website. A plugin like W3 Total Cache can help optimize this storage system with a scalable, low-latency infrastructure that’s cost-effective. By offloading workload from your Lightsail instance, you can focus more on dynamic content generation.

As you can see, there are a lot of options for making sure AWS works for your website. It’s easy to scale, customize, and more. As a WordPress host, you can feel confident AWS is doing the most for your speed, security, and overall performance.

Overall, WordPress and AWS go hand-in-hand. With many architecture options, AWS is perfect for WordPress. Installation is simpler than you think, and there’s an endless list of advanced options to consider for improvements and scalability. Utilize these best practices and tips above to make the most of Amazon’s hosting system.