Maklumat

Tulisan-tulisan terkini dapat juga didapatkan di halaman Kompasiana di alamat https://kompasiana.com/didikaha

Khusus untuk konten-konten sastra seperti puisi, cerpen dan esai silahkan kunjungi http://blog.edelweis-art.com. Terima kasih (Penulis)

Sabtu, September 28, 2019

Menginstall Apache, PHP & MariaDB pada Windows

Meski sekarang tren penggunaan server pribadi sudah mulai beralih ke layanan cloud semacam AWS dan Alibaba Cloud, namun penggunaan server pribadi tentu masih diperlukan adanya. Misalnya untuk keperluaan internal semacam perpustakaan, lab atau untuk keperluan pengujian dan development secara offline. Bagi Anda yang ingin membangun server web secara instan di komputer Windows, Anda bisa memanfaatkan XAMPP. Dengan sekali instal, Anda akan mendapatkan sekaligus Apache, PHP & MariaDB (yang menggantikan MySQL) terinstal di komputer Anda. Namun bagi Anda yang ingin membangun server web secara manual, maka Anda mesti menginstal satu per satu aplikasi yang diperlukan tersebut (Apache, PHP & MariaDB). Saya sendiri, lebih suka membangun server web secara manual, baik untuk development maupun production, karena lebih mudah melakukan pengaturan, update dan upgrade versi. Namun, tentu ini adalah soal selera, karena sebenarnya menggunakan XAMPP pun kita masih bisa melakukan pengaturan khusus seperti yang kita inginkan.

Well, bagi Anda yang ingin membangun server web secara manual, berikut akan sedikit saya share cara instalasinya. Sebelumnya, tentunya Anda harus mempersiapkan installer dari aplikasi-aplikasi yang diperlukan.

Catatan:

Tutorial ini berlaku untuk Windows 10 64-bit. Jika Anda menggunakan versi Windows lain, mungkin akan ada beberapa langkah yang berbeda, terutama untuk file installer-nya. Silahkan Anda sesuaikan atau cari referensinya ke Mbah Google.

Pertama, Apache. Apache sebagai aplikasi utama server web yang memungkinan data yang disediakan dapat diakses dengan mudah melalui http. Anda bisa mengunduh installer Apache melalui situs apachelounge.com. Sampai tulisan dibuat, versi yang terakhir yang tersedia adalah Apache 2.4 VS16 yang dirilis pada tanggal 14 Agustus 2019.

KeduaPHP. Sesuai namanya (PHP: Hypertext Preprocessor), berfungsi untuk mengolah script yang kita tulis sebelum ditampilkan pada halaman web ataupun untuk mengelola inputan dari pengguna yang kemudian disimpan di database ataupun ditampilkan hasilnya pada halaman web. Untuk mengunduh installer PHP, Anda bisa mengunjungi alamat http://windows.php.net/download/. Versi terakhir saat ini adalah PHP 7.3 (7.3.10) yang dirilis pada tanggal 16 September 2019.

Ketiga, MariaDB. Anda bisa mengunduh installer MariaDB melalui alamat https://mariadb.com/downloads/. MariaDB, sebagaimana MySQL, merupakan aplikasi database yang berfungsi untuk menampung data yang dipergunakan untuk dipublikasikan melalui server web. Versi Community Server, yaitu yang tersedia secara cuma-cuma, yang terakhir dari MariaDB saat ini adalah versi 10.4.8.

Instalasi Apache & PHP


Kita akan menggunakan file zip untuk menginstal Apache dan PHP. Ekstrak file aplikasi Apache yang telah kita unduh yaitu httpd-2.4.41-win64-VS16.zip lalu pindahkan folder Apache24 yang berada di dalamnya ke drive C. Sementara untuk PHP, setelah kita ekstrak, ubahlah nama folder hasil ekstraksi dari php-7.3.10-Win32-VC15-x64.zip menjadi php lalu pindahkan ke drive C.

Bukalah file httpd.conf pada folder C:\Apache24\conf. Tambahkan baris Define PHPROOT "c:/php7" dan baris Define DOCROOT "d:/htdocs" setelah baris Define SRVROOT "c:/Apache24" (ketiga baris ini untuk mendefinisikan folder utama dari Apache & PHP serta folder htdocs) serta tambahkan baris PHPIniDir "${PHPROOT}" setelah baris ServerRoot "${SRVROOT}". Di bawahnya tambahkan lagi tiga baris berikut yang berfungsi agar file PHP dapat dijalankan di server web karena secara default file PHP tidak dapat dijalankan secara langsung:

AddHandler application/x-httpd-php .php
AddType application/x-httpd-php .php .html
LoadModule php7_module "${PHPROOT}/php7apache2_4.dll"

Setelah itu, ubah email pada baris ServerAdmin admin@example.com menggunakan email Anda serta ubah nama server pada baris ServerName www.example.com:80 dengan nama domain atau ip server Anda. Ubah juga baris DocumentRoot "${SRVROOT}/htdocs" dan <Directory "${SRVROOT}/htdocs"> menjadi DocumentRoot "${DOCROOT}" dan <Directory "${DOCROOT}">. DOCROOT sendiri tidak harus berada di folder d:/htdocs. Bisa saja di d:/www atau kita tempatkan di folder atau drive lainnya. Yang terpenting adalah jangan meletakkannya di drive OS (C). Karena jika sewaktu-waktu OS-nya error atau rusak dan mesti diinstal ulang, kita lebih mudah untuk menyelamatkan datanya.

Selanjutnya, carilah baris AllowOverride None lalu ubah menjadi AllowOverride All (agar konfigurasi tambahan yang kita tulis pada file .htaccess kemudian dapat dijalankan juga). Lalu cari lagi baris DirectoryIndex index.html dan tambahkan index.php di depan index.html sehingga menjadi DirectoryIndex index.php index.html (berfungsi agar jika ada dua file index yang sama dengan ekstensi .php dan .html maka yang akan didahulukan/dieksekusi adalah file index.php).

Terakhir, aktifkan module rewrite, sochace_shmcb & ssl dengan membuang tanda pagar (#) pada baris-baris berikut:

LoadModule rewrite_module modules/mod_rewrite.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule ssl_module modules/mod_ssl.so

Jangan lupa save!. Module rewrite berfungsi salah satunya untuk mengubah url agar menjadi lebih enak dibaca dan diingat-ingat (misalnya mengubah url www.toko-sembako-online.com/index.php?cat=12&product=3456 menjadi www.toko-sembako-online.com/beras/beras-cianjur). Sedangkan module sochace_shmcb & ssl kita aktifkan agar web kita bisa diakses menggunakan https.

Selanjutnya, bukalah folder C:\php lalu copy file php.ini-development atau php.ini-production menjadi file php.ini. Bukalah file php.ini.

Jika diperlukan, ubahlah nilai-nilai dari max_execution_time, max_input_time, post_max_size, upload_max_filesize & memory_limit sesuai kebutuhan Anda. Setelah itu jangan lupa save. Parameter max_execution_time berfungsi untuk mengatur batas waktu berapa detik eksekusi sebuah script (default 30 dan 0 untuk tanpa batas). Sedangkan max_input_time, mengatur batas waktu input/request berapa detik sejak inputan/request diterima sampai dengan dieksekusi (default 60 dan -1 untuk tak terbatas). post_max_size mengatur batas ukuran file yang dapat dikirim melalui POST (misal 2MB atau 2048). upload_max_filesize mengatur batas ukuran file yang dapat diunggah (misal 1MB atau 1024) dan memory_limit mengatur alokasi memory komputer yang akan digunakan untuk mengeksekusi script PHP (misal 2048MB untuk alokasi memory sebesar 2GB).

Agar PHP dapat dikenali oleh sistem komputer, maka kita perlu memasukkan folder C:\php ke dalam Path System Environtment. Dan agar Apache dapat berjalan otomatis setiap kali komputer dinyalakan, maka silahkan buka CMD (buka sebagai Administrator) lalu ketik cd /d C:\Apache24\bin. Setelah aktif pada folder C:\Apache24\bin, ketik httpd.exe -k install -n "Apache2.4" untuk menginstall service Apache2.4.

Untuk melakukan upgrade versi Apache & atau PHP, sangat mudah, yaitu cukup mengganti file Apache yang berada di folder C:\Apache24 dan file PHP yang berada di folder C:\php dengan file baru. Jangan lupa sesuaikan konfigurasi dan pengaturannya di file httpd.conf & php.ini

Instalasi MariaDB


Jika untuk Apache & PHP kita menggunakan file zip, maka untuk menginstal MariaDB kita menggunakan file installer Windows (msi) yaitu mariadb-10.4.8-winx64.msi. Silahkan jalankan file tersebut dan ikuti petunjuk-petunjuk yang ada hingga proses instalasi selesai.

klik Next

centang untuk menyetujui lalu klik Next

klik tanda silang pada pilihan Database Instance

pilih Entire feature untuk menginstal semua fitur lalu klik Next

isikan kata sandi untuk 'root' atau buang centang pada Modify password
untuk membiarkan tanpa kata sandi lalu klik Next

klik Next

klik Install

tunggu sampai proses selesai lalu klik Next

selesai

Setelah MariaDB terinstal, seperti halnya folder htdocs, kita perlu memindahkan pula folder data MariaDB agar lebih aman. Untuk itu, silahkan buka Windows Service lalu stop dulu MariaDB. Buka folder data yang berada di C:\Program Files\MariaDB 10.4. Buka file my.ini lalu ganti lokasi penyimpanan data pada baris datadir=C:/Program Files/MariaDB 10.4/data ke lokasi baru misalnya menjadi datadir=D:/MariaDB/data. Jangan lupa save. Kemudian, pindahkan semua file dan folder yang berada di C:/Program Files/MariaDB 10.4/data ke D:/MariaDB/data (kecuali file my.ini). Jalankan kembali MariaDB.

Untuk mengupdate versi MariaDB ataupun menginstal lagi MariaDB pada komputer yang sama, cukup jalankan lagi file installernya dan ikut petunjuk yang ada. Jika kita bermaksud mengupdate versi, gunakan port yang sama seperti yang sedang digunakan (default port-nya 3306 seperti MySQL). Namun, jika bermaksud menginstal lagi, gunakan port dan nama service yang berbeda dan juga folder data yang berbeda. Jangan lupa menyesuaikan juga lokasi penyimpan pada file my.ini jika bermaksud mengupdate versi

pilih Create new untuk menginstal baru/menambahkan atau
pilih Do not create jika akan mengupgrade lalu klik Next

ubah Service Name dan TCP port untuk menginstal baru/menambahkan
atau biarkan apa adanya jika akan mengupgrade lalu klik Next

klik Ok

klik Finish untuk pengaturan lebih lanjut

klik No

centang pada pilihan database yang akan diupgrade lalu klik Upgrade

tunggu sampai proses selesai

selesai



Buka file my.ini pada folder data pada lokasi MariaDB yang baru (lihat gambar di atas) lalu sesuaikan lokasi data. Jika kita sedang mengupgrade maka kita tidak perlu memindahkan file dan folder yang ada pada folder data, karena kita akan menggunakan file dan folder yang telah ada sebelumnya. Namun jika kita bermaksud menginstal baru, maka kita perlu memindahkannya seperti saat instalasi pertama.

Jika kita sedang mengupgrade, pastikan service MariaDB sebelumnya sudah tidak ada atau di-disable pada Windows Services, sebab akan bisa membuat MariaDB tidak dapat dijalankan karena port-nya masih aktif.

Selamat mencoba!

Untuk melakukan pengujian terhadap instalasi Apache, PHP & MariaDB, silahkan baca tulisan saya yang berikutnya: Menguji Instalasi Server Web dan Koneksi ke Database

Tidak ada komentar:

Posting Komentar