Installing NGINX
Throughout the following recipes, we will install the latest NGINX 1.9.x version on a SaaS platform hosted by DigitalOcean. The current NGINX version supports HTTP/2. This recipe will show you how to do it.
Getting ready
For this recipe, you will need to create an account at DigitalOcean https://www.digitalocean.com/. No other prerequisites are required.
Tip
For this cookbook, we will use a commercial SaaS hosting provider to get a production-ready environment. You can use any other solution out there to build on your preferred stack.
How to do it...
For the purpose of this recipe, let's assume that we need to create an NGINX hosting environment. The following steps will guide you through this:
- Follow steps 1 until 6 in the previous recipe on how to install Apache.
- Then, we will update our server to the latest updates available:
apt-get update && apt-get -y upgrade
- Next, we will install NGINX using the latest mainline version 1.9.x. Currently, Ubuntu doesn't include the latest NGINX 1.9.x mainline version. The latest change log can be viewed at http://nginx.org/en/CHANGES. Run the following command:
echo "deb http://nginx.org/packages/mainline/ubuntu/ wily nginx" | sudo tee -a /etc/apt/sources.list.d/nginx.list echo "deb-src http://nginx.org/packages/mainline/ubuntu/ wily nginx" | sudo tee -a /etc/apt/sources.list.d/nginx.list
- Before we can install NGINX, we need to authorize the package by installing a signed key:
wget http://nginx.org/keys/nginx_signing.key | apt-key add nginx_signing.key
- Now, we will update our Ubuntu system using the latest NGINX packages:
apt-get update && apt-get -y install nginx
- Once every NGINX package is installed, we can check whether everything is in order by running the following command on the shell:
nginx -v
The output of this command is as follows:
root@mage2cookbook:~# nginx -v nginx version: nginx/1.9.6
If you have followed steps 1 to 6, you will be able to see if the web server is running. Go to your favorite browser and search using your yourdomain.com
.
Tip
In the DigitalOcean control panel, you can create multiple snapshots at all times during the recipes. This will help you in restoring an old version or just going back in time, such as switching from Apache to NGINX or back.
How it works…
Let's recap and find out what we did throughout this recipe. In steps 1 through 5, we used the same Droplet to install NGINX. All steps are alike, but instead of installing Apache, we use NGINX instead. The only big difference is that it is an official NGINX repository.
There's more…
The current market share of NGINX is around 15% worldwide compared to 50% of Apache on active sites. Over the last couple of years, NGINX has grown and is commonly used as a stable web server for Magento hosting:
http://news.netcraft.com/archives/2015/03/19/march-2015-web-server-survey.html
If you want to check whether NGINX is running fine, use one of the following commands:
service nginx status netstat -anp | grep nginx