Apache Virtual Host

From OnnoWiki
Jump to navigation Jump to search

Pengantar

Virtual hosts digunakan agar apache dapat menjalankan lebih dari satu web site dalam satu mesin.
Misalnya dashboard.indonesia.go.id dan militer.indonesia.go.id.

Problem:

Bejo Ngadimin baru saja mendaftarkan domain indonesia.go.id dan militer.indonesia.go.id
Domain tersebut nantinya akan berisi dashboard ekonomi pembangunan dan informasi wajib militer di Indonesia.
Ia ingin agar domain tersebut dapat diakses dari internet. 
Ia memiliki sebuah mesin yang telah dipasang apache2.
Ia tidak ingin terjadi begal data ketika domain tersebut diakses.
Aplikasi telah tersedia di /opt/aplikasi/public
Bantulah Bejo Ngadimin dalam menyelesaikan tugasnya.

Solusi:

  • Buat virtual hosts
  • Install mod_ssl
  • Generate sertifikat ssl
  • Buat virtual hosts khusus untuk port ssl
  • Restart Apache
<VirtualHost *:80>                                          
    ServerAdmin gw@keren.bgt                        
    DocumentRoot "/opt/aplikasi/public/"     
    ServerName dashboard.dev                                
    <Directory "/opt/aplikasi/public">       
      AllowOverride All                                     
      Require all granted                                   
    </Directory>                                            
    ErrorLog /var/log/apache2/aplikasi_error.log           
    CustomLog /var/log/apache2/aplikasi_access_log common  
</VirtualHost>                                              
                                                            
<VirtualHost *:443>                                         
    SSLEngine on                                            
    SSLCertificateFile      /etc/ssl/certs/gw_keren.crt 
    SSLCertificateKeyFile   /etc/ssl/certs/gw_keren.key 
    ServerAdmin gw@keren.bgt                        
    DocumentRoot "/opt/aplikasi/public/"     
    ServerName dashboard.dev                                
    <Directory "/opt/aplikasi/public">       
      AllowOverride All                                     
      Require all granted                                   
    </Directory>                                            
    ErrorLog /var/log/apache2/aplikasi_error.log           
    CustomLog /var/log/apache2/aplikasi_access_log common  
</VirtualHost>                                              

Referensi