Halaman

Rabu, 04 Desember 2013

Konfigurasi Web Server Apache 2.4 di Ubuntu 13.10 Linux

Web server Apache 2.4 memiliki sedikit perbedaan pengaturan konfigurasinya dari versi sebelumnya yakni Apache 2.2 atau Apache 2.0. Sistem operasi yang digunakan pada tutorial ini adalah Ubuntu Linux. Saya mengasumsikan bahwa Anda sudah menginstal aplikasi LAMP stack yang memiliki Apache server versi 2.4.

Bila Anda belum menginstalnya atau Apache server yang Anda gunakan adalah versi sebelumnya (Apache 2.2) maka silakan lihat tutorial: Instalasi dan konfigurasi LAMP Stack Linux. Baik kita langsung saja memulai langkah konfigurasinya.

1. Mengubah lokasi default dari webroot
Webroot adalah lokasi dimana aplikasi-aplikasi web Anda diletakan. Pada umumnya lokasi defaultnya adalah di /var/www namun jika diletakan di /var/www maka kerugiannya adalah jika sistem operasi Linux Anda di(dist-)upgrade, maka data-data pada lokasi tersebut terhapus semua pada saat (dist-)upgrade (kecuali Anda mem-backupnya terlebih dahulu). Kerugian lainnya adalah lokasi tersebut adalah milik publik sehingga setiap user dapat mengakses folder tersebut. Sebaiknya lokasinya dipindah ke folder user Anda, misal /home/husnanlabs/htdocs. Keuntungan dari pemindahan lokasi webroot ke dalam folder user adalah folder user tersebut dipertahankan (tidak dihapus) saat terjadi upgrade sistem operasi ke versi terbaru dan hak akses dibatasi yang pada umumnya hanya untuk user tersebut.

Untuk memindahkan lokasi webroot yang perlu Anda lakukan adalah membuat atau mengedit file yang berisi pendefinisian konfigurasi virtual host. File ini berisi definisi lokasi webroot dan konfigurasinya. Letaknya berada pada filepath: /etc/apache2/sites-available/000-default.conf. Pada tutorial ini saya hanya akan menggunakan satu definisi virtual host saja sehingga saya cukup mengedit file 000-default.conf tersebut dengan menggunakan perintah:
  sudo nano /etc/apache2/sites-available/000-default.conf

Tips: Ada baiknya Anda mem-backup file tersebut sebelum dimodifikasi.

Berikut tampilan awal file 000-default.conf sebelum dimodifikasi:

File 000-default.conf (sebelum dimodifikasi)


Langkah pengeditan file ini adalah:
1. Ubah folder path pada bagian DocumentRoot, misalnya menjadi /home/husnanlabs/htdocs
2. Tambahkan script berikut tepat di atas tag penutup definisi virtual host (</VirtualHost>):
<Directory "path_directory_webroot">
    Order allow,deny
    Allow from all
    Require all granted
</Directory>

Perhatikan bahwa Anda harus mengubah alamat path: "path_directory_webroot" sesuai dengan definisi yang telah Anda tuliskan di bagian DocumentRoot yang telah dijelaskan pada poin 1 di atas. Pada contoh di atas saya mendefinisikan DocumentRoot dengan path /home/husnanlabs/htdocs maka definisi dari "path_directory_webroot" adalah "/home/husnanlabs/htdocs".

Bila masih kurang jelas, silakan lihat tampilan dari file 000-default.conf yang telah saya modifikasi:


File 000-default.conf (setelah dimodifikasi)


2. Membuat folder webroot
Perhatikan contoh pada definisi DocumentRoot dan Directory path diatas, terdapat folder htdocs tepatnya berada dilokasi /home/husnanlabs/htdocs. Anda perlu membuatkan foldernya terlebih dahulu. Folder ini tidak harus diberi nama htdocs, Anda bisa memberikan nama lain misalnya public_html yang penting di sini adalah nama foldernya sesuai dengan definisi dari DocumentRoot dan Directory path-nya yang terdapat di dalam file /etc/apache2/sites-available/000-default.conf. Untuk membuat folder sebagai webroot tersebut cukup dengan perintah mkdir, berikut perintahnya berdasarkan konfigurasi contoh di atas:
cd ~
mkdir htdocs

Setelah itu lakukan restart terhadap web serice-nya Apache dengan mengetikan perintah berikut di terminal:
  sudo service apache2 restart

Karena lokasi webroot telah dipindahkan dari /var/www ke /home/husnanlabs/htdocs maka jika Anda ingin membuat aplikasi PHP lokasi defaultnya ada di lokasi baru tersebut.

3. Konfigurasi FQDN (Fully Qualified Domain Name)
Mungkin Anda pernah merestart atau menjalankan Apache server kemudian muncul pesan pemberitahuan seperti ini:

apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message

Hal tersebut diakibatkan karena belum didefinisikannya ServerName misalnya untuk nama server localhost di dalam file fqdn. Untuk mengetahui keterangan mengenai FQDN silakan lihat keterangannya di wikipedia.

Pesan tentang belum didefinisikannya ServerName untuk FQDN


Untuk mengatasi hal ini adalah dengan cara:
1. Membuatkan file fqdn.
Masuk ke aplikasi terminal lalu ketik perintah berikut:
  sudo nano /etc/apache2/conf-available/fqdn.conf

2. Mendefinisikan ServerName
Kemudian setelah di dalam aplikasi nano (atau gedit), tambahkan definisi berikut kemudian simpan:
  ServerName localhost

3. Mengaktifkan konfigurasi FQDN
Setelah langkah 1 dan 2 dilakukan, sekarang saatnya mengaktifkan konfigurasi ini, caranya dengan mengetikan perintah:
  sudo a2enconf fqdn

4. Merestart web server Apache
Langkah terakhir yang perlu Anda lakukan adalah merestart webserver Apache dengan mengetikan perintah:
  sudo service apache2 restart

Sekarang pesan tentang definisi ServerName mengenai FQDN tidak muncul lagi saat web server Apache di-start atau restart. Sekian tutorial dari saya dan semoga bermanfaat.

© 2013 husnanlabs.blogspot.com

Tidak ada komentar:

Posting Komentar