Ravindra BagaleCourses & study guides

8. Hosting a Static Website and Changing the Configuration

8.5 Ubuntu + Apache

sudo service nginx stop 2>/dev/null
sudo systemctl disable nginx 2>/dev/null
sudo apt update && sudo apt install -y apache2

sudo tee /etc/apache2/sites-available/mysite.conf > /dev/null <<'EOF'
<VirtualHost *:80>
    ServerName mysite.local
    DocumentRoot /var/www/mysite
    <Directory /var/www/mysite>
        Options -Indexes +FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
    ErrorDocument 404 /404.html
    ErrorLog  ${APACHE_LOG_DIR}/mysite_error.log
    CustomLog ${APACHE_LOG_DIR}/mysite_access.log combined
</VirtualHost>
EOF

sudo a2ensite mysite.conf
sudo a2dissite 000-default.conf
sudo a2enmod rewrite                 # useful for .htaccess rules later
sudo apache2ctl configtest && sudo service apache2 reload
curl -s http://localhost | head -5

Ravindra Bagale's Tip

a2ensite kela pan 000-default.conf disable kela nahi, tar Ubuntu cha default page disat rahto. sudo a2dissite 000-default.conf aani mag configtest + reload. Kontya site enabled aahet te ls /etc/apache2/sites-enabled ne bagha.

Lab

Host mysite with Apache on Ubuntu and list enabled sites and modules (apache2ctl -M | grep rewrite).