Ravindra BagaleCourses & study guides मराठी Track your progress

Chapter 6: Web Servers — Nginx and Apache

6.4 Amazon Linux 2023

Come on, let's install now. Pick the OS of your instance and type these commands with me. Today we start the first web server on Mauli Dairy's Amazon Linux 2023 server.

Nginx on Amazon Linux 2023

sudo yum install -y nginx
sudo service nginx start
sudo systemctl enable nginx
sudo service nginx status
sudo nginx -t                              # test configuration syntax
curl -I http://localhost                   # expect HTTP/1.1 200 OK
ls /usr/share/nginx/html                   # default web root

Apache on Amazon Linux 2023

sudo yum install -y httpd
sudo service httpd start
sudo systemctl enable httpd
sudo service httpd status
sudo apachectl configtest                  # expect "Syntax OK"
echo "<h1>Apache on Amazon Linux 2023</h1>" | sudo tee /var/www/html/index.html
curl http://localhost

Amazon Linux 2 (older)

On Amazon Linux 2 use sudo yum install -y httpd, and for Nginx sudo amazon-linux-extras install -y nginx1. Everything else (paths, service names) is the same.

Pay attention for security: after a fresh install, the web server shows a default test page and its version in the Server: header. Before the server faces the internet, replace the test page with your own content and hide the version (section 8.8) – default pages make it very easy for attackers to identify the server.

Ravindra Bagale's Tip

When the site doesn't open in the browser after installing, many students start changing the config. First run curl -I http://localhost on the server itself. If you get 200 here but not in the browser, the problem is outside – the security group, typing https, or the wrong IP.

Lab

Tumchya Amazon Linux instance var Nginx install kara, curl -I http://localhost ne 200 OK aani Server: header bagha. Mag sudo service nginx stop karun Apache install kara, sudo service httpd start kara aani curl http://localhost ne Apache cha page disato ka te confirm kara.