Difference between revisions of "Apache: Virtual Host - lagi"

From OnnoWiki
Jump to navigation Jump to search
Line 55: Line 55:
  
 
  <VirtualHost *:80>
 
  <VirtualHost *:80>
     ServerName www.darmajaya.ac.id
+
     ServerName www.itts.ac.id
     ServerAlias darmajaya.ac.id
+
     ServerAlias itts.ac.id
     DocumentRoot /usr/local/src/webmirror/www.darmajaya.ac.id/
+
     DocumentRoot /usr/local/src/webmirror/www.itts.ac.id/
  
     <Directory /usr/local/src/webmirror/www.darmajaya.ac.id>
+
     <Directory /usr/local/src/webmirror/www.itts.ac.id>
 
         Options -Indexes +FollowSymLinks +MultiViews
 
         Options -Indexes +FollowSymLinks +MultiViews
 
         AllowOverride All
 
         AllowOverride All
Line 65: Line 65:
 
     </Directory>
 
     </Directory>
 
   
 
   
     ErrorLog ${APACHE_LOG_DIR}/www.darmajaya.ac.id-error.log  
+
     ErrorLog ${APACHE_LOG_DIR}/www.itts.ac.id-error.log  
 
   
 
   
 
     # Possible values include: debug, info, notice, warn, error, crit,
 
     # Possible values include: debug, info, notice, warn, error, crit,
Line 71: Line 71:
 
     LogLevel warn
 
     LogLevel warn
 
   
 
   
     CustomLog ${APACHE_LOG_DIR}/www.darmajaya.ac.id-access.log combined  
+
     CustomLog ${APACHE_LOG_DIR}/www.itts.ac.id-access.log combined  
 
   </VirtualHost>
 
   </VirtualHost>
  
Line 85: Line 85:
 
==Cara Mengaktifkan Konfigurasi virtual host==
 
==Cara Mengaktifkan Konfigurasi virtual host==
  
Misalnya kita mempunyai konfigurasi virtual host (darmajaya.ac.id.conf) di /etc/apache2/sites-available/darmajaya.ac.id.conf yang belum di enable. Untuk mengaktifkannya cukup menggunakan,
+
Misalnya kita mempunyai konfigurasi virtual host (itts.ac.id.conf) di /etc/apache2/sites-available/itts.ac.id.conf yang belum di enable. Untuk mengaktifkannya cukup menggunakan,
  
  sudo a2ensite darmajaya.ac.id.conf # membuat symlink dari site-enabled ke site-available
+
  sudo a2ensite itts.ac.id.conf       # membuat symlink dari site-enabled ke site-available
 
  sudo service apache2 reload        # reload pache config agar host virtual yang baru jadi masuk
 
  sudo service apache2 reload        # reload pache config agar host virtual yang baru jadi masuk
 
  sudo systemctl reload apache2
 
  sudo systemctl reload apache2
Line 93: Line 93:
 
Untuk mendisable,
 
Untuk mendisable,
  
  sudo a2dissite darmajaya.ac.id.conf #Remove symlink
+
  sudo a2dissite itts.ac.id.conf     #Remove symlink
 
  sudo service apache2 reload
 
  sudo service apache2 reload
 
  sudo systemctl reload apache2
 
  sudo systemctl reload apache2

Revision as of 05:12, 10 October 2021

Sumber: https://serversforhackers.com/c/configuring-apache-virtual-hosts


Apache memungkinkan kita untuk menjalankan beberapa situs dalam sebuah server apache.

Ubuntu menggunakan dua (2) directory untuk virtual host, yaitu:

  • /etc/apache2/sites-available
  • /etc/apache2/sites-enabled

Folder site-enabled berisi symlink ke site-available, dengan cara ini kita dapat mengkonfigurasi dengan aman di site-available jika di disable dengan cara menghilangkan symlink.


File Konfigurasi Virtual Host

Cara yang paling mudah, copy / contek default.conf

sudo cp /etc/apache2/sites-available/000-default.conf \
        /etc/apache2/sites-available/darmajaya.ac.id.conf

Isinya kira-kira

<VirtualHost *:80>
    # The ServerName directive sets the request scheme, hostname and port that
    # the server uses to identify itself. This is used when creating
    # redirection URLs. In the context of virtual hosts, the ServerName
    # specifies what hostname must appear in the request's Host: header to
    # match this virtual host. For the default virtual host (this file) this
    # value is not decisive as it is used as a last resort host regardless.
    # However, you must set it for any further virtual host explicitly.
    #ServerName www.example.com

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www

    # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
    # error, crit, alert, emerg.
    # It is also possible to configure the loglevel for particular
    # modules, e.g.
    #LogLevel info ssl:warn

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    # For most configuration files from conf-available/, which are
    # enabled or disabled at a global level, it is possible to
    # include a line for only one particular virtual host. For example the
    # following line enables the CGI configuration for this host only
    # after it has been globally disabled with "a2disconf".
    #Include conf-available/serve-cgi-bin.conf
</VirtualHost>

Ubah di sesuaikan dengan virtual host kita,

<VirtualHost *:80>
    ServerName www.itts.ac.id
    ServerAlias itts.ac.id
    DocumentRoot /usr/local/src/webmirror/www.itts.ac.id/
    <Directory /usr/local/src/webmirror/www.itts.ac.id>
        Options -Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/www.itts.ac.id-error.log 

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/www.itts.ac.id-access.log combined 
 </VirtualHost>

Arti masing-masing parameter

  • ServerName dan ServerAlias: Memberitahukan Apache akan virtual host yang akan di akses
  • DocumentRoot: Ubah sesuai dengan folder tempat meletakan file untuk host tersebut
  • Options -Indexes:: -Indexes menghentikan orang untuk bisa masuk ke directory dan melihat file yang ada di situ.
  • AllowOverride: Set ke "all" untuk allow .htaccess files di virtual host (dan sub-directory)
  • ErrorLog, CustomLog: Buat log file untuk domain virtual tersebut.


Cara Mengaktifkan Konfigurasi virtual host

Misalnya kita mempunyai konfigurasi virtual host (itts.ac.id.conf) di /etc/apache2/sites-available/itts.ac.id.conf yang belum di enable. Untuk mengaktifkannya cukup menggunakan,

sudo a2ensite itts.ac.id.conf       # membuat symlink dari site-enabled ke site-available
sudo service apache2 reload         # reload pache config agar host virtual yang baru jadi masuk
sudo systemctl reload apache2

Untuk mendisable,

sudo a2dissite itts.ac.id.conf      #Remove symlink
sudo service apache2 reload
sudo systemctl reload apache2

Referensi

Pranala Menarik