WEB DEVELOPMENT
[edit]

Apache

https://manpages.debian.org/trixie/apache2/index.html

Install


$ sudo apt update


$ sudo apt install apache2

Configure


$sudo nano /etc/apache2/apache2.conf


<Directory /srv/www/> 
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory> 


$ sudo a2enmod rewrite
$ sudo systemctl restart apache2

Create 'webmaster' usergroup and add user for file access.

$ sudo addgroup webmaster
$ sudo usermod -a -G webmaster dan

Log out and back in for the Group change to take effect. Create 'webserver' generic webhost.

$ sudo mkdir /srv/www/webserver.local
$ sudo chgrp -R webmaster /srv/www/webserver.local
$ sudo chown -R dan:webmaster /srv/www/webserver.local

Configure 'webserver' virtualhost.

$ sudo nano /etc/apache2/sites-available/webserver.conf


<VirtualHost *:80>
    ServerName www.webserver.local
    ServerName webserver.local
    ServerAdmin webmaster@webserver.local
    DocumentRoot /srv/www/webserver.local/
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

                                                       
<VirtualHost *:80>
    ServerName www.berladyn.local
    ServerAlias berladyn.local
    ServerAdmin webmaster@berladyn.local
    DocumentRoot /srv/www/berladyn/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<VirtualHost *:80>
    ServerName www.dan.berladyn.local
    ServerAlias dan.berladyn.local
    ServerAdmin webmaster@berladyn.local
    DocumentRoot /srv/www/berladyn/public_dan 
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<VirtualHost *:80>
    ServerName www.dev.berladyn.local
    ServerAlias dev.berladyn.local
    ServerAdmin webmaster@berladyn.local
    DocumentRoot /srv/www/berladyn/public_dev
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<VirtualHost *:80>
    ServerName www.his.berladyn.local
    ServerAlias his.berladyn.local
    ServerAdmin webmaster@berladyn.local
    DocumentRoot /srv/www/berladyn/public_his
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>


$ sudo systemctl status apache2
$ sudo systemctl reload apache2
$ sudo systemctl restart apache2

$ sudo a2ensite webserver.conf

https://docs.boltcms.io/5.2/howto/making-sure-htaccess-works