Ravindra Bagale · Cyber Securityसर्व coursesया course चे lessonsशोधाEnglish

Cyber Security · मराठी आवृत्ती

Ubuntu वर Apache मधून site host करा

रवींद्र बागले यांच्या course वर आधारित · सहज मराठीत explanation

Ubuntu Apache मध्ये site config .conf file मध्ये ठेवून a2ensite वापरतो. आधीची Nginx lab service असेल तर stop/disable करतो.

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

a2ensite mysite.conf आपली site enable करतो. a2dissite 000-default.conf जुनं default disable करतो. Rewrite module पुढच्या .htaccess examples साठी आहे; pure static site ला आवश्यकच आहे असं नाही. ${APACHE_LOG_DIR} quoted here-doc मुळे shell expand करत नाही; Apache च्या configuration context मध्ये त्याचा उपयोग होतो.

Source example मधलं AllowOverride All शिकण्यासाठी आहे. App ला overrides लागत नसतील तर scope कमी ठेवा. Config test पास झाल्यावर reload करा.

Lab

Ubuntu Apache वर mysite host करा. Enabled sites list पाहा आणि apache2ctl -M | grep rewrite ने rewrite module तपासा.