7. Apache and Nginx: Install and Understand
7.3 Installing Nginx and Apache on Amazon Linux 2023
Chala, install karuya. Amazon Linux madhe install nantar service aapoaap start hot nahi – service start aani systemctl enable donhi karava lagtat.
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.
Why this matters for security
A fresh install shows a default test page and a version banner. Replace the test page with your own content and hide versions (section 8.9) before a server faces the internet – default pages are a quick fingerprint for attackers.
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.
Ravindra Bagale's Tip – मराठी
Install नंतर browser मध्ये site उघडत नाही म्हणून बरेच students config बदलत बसतात. आधी server वरच curl -I http://localhost चालवा. इथे 200 आला पण browser मध्ये नाही, तर problem बाहेर आहे – security group, https type केलं, किंवा चुकीचा IP.
Ravindra Bagale's Tip – हिंदी
Install के बाद browser में site नहीं खुलती तो बहुत से students config बदलने लगते हैं. पहले server पर ही curl -I http://localhost चलाओ. यहाँ 200 आए पर browser में नहीं, तो problem बाहर है – security group, https type कर दिया, या गलत IP.
Lab
On your Amazon Linux instance install Nginx, confirm 200 OK with curl -I http://localhost, then stop it, install Apache and confirm Apache's page instead.