Hai sobat Dunia IT ! bertemu lagi dengan saya kautsar, dalam penulisan saya kali ini saya akan sharing bagaimana cara konfigurasi web server apache & nginx debian 9.8.
Sebelum itu sobat sudah tau belum apa itu Apache dan Nginx, jika belum tahu mari kita simak penjelasan dibawah.
Apache dan Nginx adalah dua pemain utama dalam bisnis web server yang mencakup 5 persen lalu lintas web melalui internet tetapi mereka berbeda satu sama lain.
Apache adalah "Apache HTTP Server". Ini adalah perangka lunak web server open-source, bekinerja tinggi yang dikembangkan dan dikelola oleh Apache Softtware Foundaion. Apache dirancang unuk membua web server kelas komersial yang aman, kuat, dan efisien sesuai dengan standar HP saat ini.
Apache tetap menjadi pilihan pertama di antara administrator server karena fleksibilitas, kesederhanaan arsitektur, kompatibilitas daya, dan dukungan multi-platform. Ini dapa berjalan di hampir semua sisem operasi, seperi Windows, UNIX, OSX, NetWare, dan lain-lain. Namun umumnya digunakan dalam kombinasi dengan Linux.
Apache menjadi tulang punggung WWW (World Wide Web) tetapi ketika nginx datang dalam bisnis, pilihan administrator server berubah.
Mari kita lihat perbedaan antara Apache dan Nginx :
- Apache adalah server HTTP open-source sedangkan Nginx adalah open-source, web server asinkron berkinerja tinggi, dan server prox terbaik.
- Perbaikan bug, dukungan, pemeliharaan, dan pengembangan aplikasi di server HTTP Apache dikelola dan dikelola oleh komunitas pengguna dari seluruh dunia dan dikoordinasikan oleh Yayasan Perangka Lunak Apache sedangkan Nginx ditangani oleh perusahaan dengan nama yang sama yang didirikan di 2011.
- Perbedaan utama antara keduanya adalah bagaimana mereka menangani permintaan klien. Apache menyediakan berbagai modul multiprosesor yang berbeda untuk menangani perminaan klien dan trafik web. Sedangkan Nginx dirancang sedemikian rupa unuk menangani beberapa perminaan klien secara bersamaan dengan sumber daya perangka keras minimal.
- Di Apache, single thread dikaitkan dengan hanya satu koneksi sedangkan single thread di Nginx dapat menangani beberapa koneksi. Semua proses dimasukkan ke dalam event loop bersama dengan koneksi lain dan dikelola secara tidak sinkron. Proses ini menghabiskan lebih sedikit memori sehingga meningkakan kinerja.
- Apache HTTP Server memiliki arsitektur multi-threaded yang tidak memiliki skalabilitas. Sedangkan Nginx mengikuti pendekatan event-driven asinkron unuk menangani beberapa perminaan klien. Arsitektur event-driven dirancang unuk memfasilitasi kinerja yang lebih baik bahkan di bawah trafik yang padat.
- Server Apache menyajikan konten statis menggunakan metode konvensional dan memproses konten dinamis secara asli di dalam web server itu sendiri. Nginx tidak dapat memproses konten dinamis secara internal. Itu bergantung pada proses eksternal untuk eksekusi.
Apache | NGINX |
Apache berjalan di semua sistem seperti Unix, seperti Linux, BSD, dan lain-lain. Serta sepenuhnya mendukung Windows. | Nginx berjalan pada sistem mirip Unix modern; namun memiliki dukungan terbatas untuk Windows |
Apache menggunakan pendekatan multi-threaded untuk memproses permintaaan klien. | Nginx mengikuti pendekatan event-drive untuk melayani permintaan klien. |
Apache tidak dapat menangani beberapa permintaan secara bersamaan dengan trafik web yang berat. | Nginx dapat menangani beberapa permintaan klien secara bersamaan dan efisien dengan sumber daya hardware yang terbatas. |
Apache dirancang untuk menjadi web server. | Nginx adalah web server dan proxy server. |
Modul dimuatt atau dibongkar secara dinamis sehingga lebih fleksibel. | Karena modul tidak dapat dimuat secara dinamis, mereka harus dikompilasi dalam software inti itu sendiri. |
Single thread hanya dapat memproses satu koneksi. | Single thread dapat menangani beberapa koneksi. |
Kinerja Apache untuk konten statis lebih rendah dari Nginx. | Nginx secara bersamaan dapat menjalankan ribuan koneksi konten statis dua kali lebih cepat dari Apache dan menggunakan sedikit memori. |
- File ISO (Debian 9.8.0-amd64-DVD-1)
Topologi :
Saat semuanya sudah siap langsung saja kita mulai konfigurasinya.
1. Pertama-tama kita check IP, saya memakai dua network adapter yang ens33 berfungsi sebagai mendapatkan paket dari internet karena bisa saja paket yang ada di dalam file iso itu tidak lengkap, sedangkan untuk ens37 berfungsi sebagai IP dari web server yang kita buat nanti.
2. Disini kita test ping google.com karena tujuan nya di awal ada saja paket yang tidak lengkap di file iso karena itu kita mengambil paket dari repository luar nantinya.
3. Masukan perintah : cd /etc/bind
yang berarti kita pindah ke dalam folder /etc/bind.
4. Edit file dengan perintah : nano named.conf.local
5. Disini biasanya kita hanya menggunakan satu IP untuk santau domain, di materi kali ini kita akan mecoba 2 domain dalam 1 IP.
6. Copy file db.127 menjadi db.ip dengan perintah : cp db.127 db.ip
7. edit file dengan editor nano dengan peritnah : nano db.ip
8. Seperti biasa isikan seperti digambar tapi berbeda seperti sebelumnya, karena kita menggunakan dua domain dalam satu IP kita tambahkan domain ke dua dibawahnya domain pertama.
19. Perlu kalian tau disini kita hanya perlu memasukan IP dari dns yang kita buat tadi, jadi search apache.ap & nginx.ng pun tidak perlu.
Pengujian DNS
Kita masuk dalam tahapaan penggujian konfigurasi bind9
1. Masukan perintah nslookup untuk masing-masing domain dan kita uji menggunakan www.
2. Sekarang kita uji melalui dig dan kita coba tidak menggunakan www.
3. Jika kalian tidak bisa dig harap install paket yang bernama : apt-get install dnsutils
Instalasi Apache2
Saat kita sudah selesai konfigurasi bind9 mari kita lanjutkan ke Instalasi Apache dan konfigurasinya.
1. Kita install paket Apache2 dengan perintah : apt-get install apache2 -y
2. Disini kita memasukan dua perintah yaitu :
- cd /etc/apache2/sites-available/ : yang artinya kita berpindah direktori ke ./etc/apache2/sites-available/
- cp 000-default.conf kautsar.conf : fungsi sebagai membuat copy dari file 000-default.conf menjadi kautsar.conf karena yang akan kita gunakan adalah kautsar.conf, dan sebaiknya sebagai administrator kita harus mempunyai backup dari semua konfigurasi biar lebih aman dalam kesalahan nantinya.
3. Edit file menggunakan editor nano dengan perintah : nano kautsar.conf
- ServerName : www.apache.ap (adalah domain yang saya gunakan) jadi misalkan domain kalian adalah www.google.com pakai lah jadi ServerName www.google.com.
- DocumentRoot /var/www/html/ : fungsinya sebagai peletakkan dari sebuah html yang akan menjadi tampilan webnya nanti.
7. Kita edit html nya untuk bagian judul dan sub judul nantinya, sebelum nya kenapa saya menambah kan script marquee. Itu hanya iseng-iseng coba karena marquee sendiri itu adalah elemen HTML non-standar yang menyebabkan teks untuk menggulir ke atas, bawah, kiri atau kanan secara otmatis.
8. Masukan perintah a2dissite untuk menonaktifkan mengunakan 000-default.conf karena kita sudah membuat kautsar.conf
9. Masukan perintah a2ensite kautsar.conf untuk mengaktifkan file ini menjadi yang dipakai untuk penggunaan web server apache.
10. Setelah kita konfigurasikan kita restart terlebih dahulu dengan perintah : /etc/init.d/apache2 restart
Pengujian Apache2
Kita ketahapan pengujian dari Apache2 yang telah kita konfigurasi sebelumnya
1. Jangan lupa untuk memasukkan IP dari Server Debian ke client.
2. Kita uji melalui nslookup dari dua domain tersebut, dan perlu di ingat bahwa dig tidak ada di Windows.
3. Uji ping dari dua domain tersebut, dan pastikan IP nya sama.
Insalasi Nginx
Nah karena ktia sebelumnya sudah menginstall Apache2 saat nya kita mencoba Nginx
1. Gunakan perintah systemctl stop Apache2 untuk memberhentikan layanan dari Apache2 karena Apache2 dan Nginx adalah web server jika keduanya aktif tidak akan berfungsi.
2. Pastikan lagi kalau layanan dari apache2 sudah off dengan perintah : systemctl status apache2
3. Kita install paket dari nginx dengan perintah : apt-get install nginx -y
- cd .. : untuk mundur satu folder kebelakang
- mkdir html 2: kita membuat folder bernama html2.
- cd html : adalah perintah untuk berpindah ke folder html.
- ls : untuk mengecheck ada file atau folder apa saja di dalam folder tersebut.
- mv index.nginx-debian.html /var/www/html2/ : adalah untuk memindahkan file index.nginx-debian.html ke folder /var/www/html2/
7. Kita edit file yang berada di /etc/nginx/sites-available dengan perintah : nano /etc/nginx/sites-available/default
8. Root ini adalah peletakkan dari path yang akan kalian gunakan karena saya sebelumnya membuat html2 jadi saya masukan html2.
10. Sebelum ketahap pengujian pastikan kita sudah start nginx dengan perintah : systemctl start nginx
Pengujian Nginx
1. Melalui domain kita uji coba.
2. Melalui IP.
No comments:
Post a Comment