Cara Menginstal Apache, PHP, MariaDB, dan Adminer di Windows 10
Untuk pengguna linux Debian/Ubuntu, saya membuat panduan di sini.
Artikel ini akan menjelaskan cara menginstal server web Apache serta PHP (bahasa pemrograman) dan MariaDB (sistem manajemen basis data) secara manual, bukan menggunakan paket distribusi instan seperti XAMPP.
Versi perangkat lunak yang dijelaskan di tulisan ini adalah:
- Windows 10 Pro versi 1903
- Apache (httpd) httpd-2.4.39-win64-VS16
- PHP 7.3.7-Win32-VC15-x64 (Thread Safe)
- MySQL (MariaDB) 5.5.5-10.3.8
- Adminer 4.7.1 (english only)
(diperbarui pada 23 Juli 2019)
Menginstal Apache 2.4
Unduh file zip di Apache Lounge sesuai sistem operasi. Karena OS saya Windows 10 64-bit, maka saya mengunduh yang versi Win64.
Pastikan Visual C++ Redistributable sudah terinstal (x64 atau x86 tergantung versi Windows; instal keduanya jika tidak yakin).
Ekstrak file zip tadi di C:/Apache24/
, sehingga direktori tersebut berisi file-file berikut:
Pada direktori C:/Apache24/conf/
, buka file httpd.conf
menggunakan Notepad atau semacamnya. Hapus tanda komentar (#
) pada variabel ServerName
(sekitar baris 227) dan ubah nilainya menjadi
ServerName localhost:80
Menggunakan cmd, tuju direktori C:/Apache24/bin/
dan jalankan perintah berikut untuk memasang service dan menjalankan Apache:
httpd.exe -k install
httpd.exe -k start
Sekarang Apache akan langsung aktif ketika komputer dihidupkan.
Akses http://localhost menggunakan web browser. Seharusnya akan muncul notifikasi sukses "It Works!".
(Gunakan perintah httpd.exe -k stop
untuk menghentikan service Apache, atau httpd.exe -k uninstall
untuk menghapus service Apache jika diperlukan.)
Menginstal PHP 7
Unduh file zip php di windows.php.net/download. Unduh versi Thread Safe (untuk Apache). Pastikan juga apakah kita menggunakan x86 atau x64.
Ekstrak file zip tersebut di C:/php/
. Ubah nama file php.ini-development
menjadi php.ini
. Buka file tersebut menggunakan text editor. Uncomment variabel extension_dir
(sekitar baris 754) dengan cara menghapus tanda titik koma (;
), lalu ubah nilainya menjadi "c:/php/ext/"
.
extension_dir = "c:/php/ext/"
Masih di file tersebut, tuju bagian Dynamic Extensions (sekitar baris 900), lalu uncomment ekstensi php yang mungkin kita perlukan nantinya, seperti:
extension=bz2
extension=curl
extension=mysqli
extension=odbc
extension=pdo_mysql
extension=pdo_odbc
extension=pdo_pgsql
extension=pdo_sqlite
extension=pgsql
Jika perlu, atur juga variabel lainnya yang mungkin dibutuhkan seperti:
memory_limit
(baris 401, misalnyamemory_limit = 512M
)post_max_size
(baris 686, misalnyapost_max_size = 32M
)upload_max_filesize
(baris 839, misalnyaupload_max_filesize = 4M
)date.timezone
(baris 954, isi denganAsia/Jakarta
atau lihat daftar lengkapnya di php.net)
Agar server Apache kita mengetahui direktori PHP, buka C:/Apache24/conf/httpd.conf
menggunakan editor teks dan tambahkan ini di bagian atas:
PHPIniDir "c:/php/"
LoadModule php7_module "c:/php/php7apache2_4.dll"
AddHandler application/x-httpd-php .php
AddType application/x-httpd-php .php .html
Agar Apache mengenali index.php
sebagai file utama (index), tambahkan teks berikut pada bagian dir_module
(sekitar baris ke-285):
DirectoryIndex index.html index.php
Copy tiga file berikut dari direktori c:/php/
:
libcrypto-1_1-x64.dll
,libssh2.dll
, danlibssl-1_1-x64.dll
ke direktori c:/Apache24/bin/
. Biarkan overwrite file-file yang sudah ada. (Langkah ini diperlukan karena file-file bawaan Apache agak bermasalah.)
Restart Apache dengan perintah httpd -k restart
. Tuju direktori document root (C:/Apache24/htdocs/
), ubah nama file index.html
menjadi index.php
. Buka file tersebut menggunakan editor teks, hapus semua isinya, dan tambahkan kode php
phpinfo();
, lalu simpan file tersebut. Cobalah mengakses http://localhost menggunakan web browser, seharusnya akan muncul laman status konfigurasi PHP seperti di bawah:
Membuat Virtual Host (Opsional)
Umumnya kita menempatkan file-file aplikasi web pada direktori htdocs. Namun saya juga akan menjelaskan bagaimana cara membuat virtual host, sehingga proyek aplikasi web lokal yang sedang dibuat dapat diakses dengan alamat unik (misalnya http://dummy).
Pada contoh ini, kita akan membuat sebuah vhost bernama 'dummy', yang bisa diakses menggunakan browser web pada komputer lokal di http://dummy.
Buka file C:/Apache24/conf/httpd.conf
. Hapus simbol komentar (#
) di depan Include conf/extra/httpd-vhosts.conf
(sekitar baris 515).
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
Buka file C:/Apache24/conf/extra/httpd-vhosts.conf
. Tambahkan kode berikut pada bagian awal file:
# Automatically (and lazilly) set up correct permission
<Directory C:/Apache24/htdocs>
Require all granted
</Directory>
<Directory C:/Apache24/vhosts>
Require all granted
</Directory>
Pada kode di atas, kita memilih direktori virtual host di C:/Apache24/vhosts/
. Ubah jika diperlukan.
Sekarang direktori C:/Apache24/htdocs
(http://localhost) juga akan dianggap sebagai virtual host. Tambahkan kode berikut di bagian akhir file:
<VirtualHost *:80>
DocumentRoot "c:/Apache24/htdocs"
ServerName localhost
</VirtualHost>
Untuk membuat vhost bernama 'dummy', tambahkan kode berikut pada bagian akhir file:
<VirtualHost *:80>
DocumentRoot "c:/Apache24/vhosts/dummy"
ServerName dummy
</VirtualHost>
Jangan lupa, buat direktori baru bernama 'dummy' pada C:/Apache24/vhosts/
. Pada folder 'dummy', buat file baru bernama index.php
. Masukkan kode untuk menguji apakah virtual host sudah terbaca dengan baik, misalnya:
<?php
echo "<h1>File ini siap dimodifikasi</h1>"
?>
Terakhir, kita harus mengatur agar komputer mengetahui bahwa http://dummy berada di komputer lokal, bukan internet. Tambahkan kode berikut (menggunakan hak administrator) setelah baris terakhir pada file C:/Windows/System32/drivers/etc/hosts
:
127.0.0.1 dummy
Restart Apache, lalu tuju http://dummy menggunakan web browser. Virtual host baru lainnya dapat ditambahkan dengan cara seperti di atas.
Menginstal MariaDB
MariaDB dikembangkan oleh komunitas dengan lisensi GNU GPL, sehingga kita bisa menggunakannya gratis tanpa biaya. (MySQL kini dimiliki oleh Oracle). Kedua basis data ini identik dan kompatibel.
Unduh MariaDB di situs resminya. Pilih sesuai versi OS, 32-bit atau 64-bit.
Karena instalasi berbasis GUI, kita cukup mengikuti petunjuk yang ada. Ada beberapa langkah yang harus diperhatikan, misalnya:
Pada langkah di atas, kita tidak perlu menginstal HeidiSQL karena nantinya kita akan menggunakan Adminer, alternatif dari PHPMyAdmin. (Saya tidak menginstal Database instance karena pada kasus saya, MariaDB versi lama sudah terpasang.)
Tentukan password root (jangan sampai lupa), lalu pada langkah Database settings, biarkan saja seperti itu. Catat Service name dan TCP Port.
Basis data akan tersimpan pada folder 'data' di direktori instalasi, misalnya C:\Program Files\MariaDB 10.3\data\
.
Menginstal Adminer
Pada contoh ini, saya akan menggunakan Adminer, program manajemen basis data yang ditulis di satu file PHP.
Unduh di sini, ukurannya sekitar 457 kB. Rename nama file menjadi adminer.php
. Tempatkan di direktori htdocs (misalnya C:/Apache24/htdocs/
). Tuju http://localhost/adminer.php menggunakan web browser.
Pilih 'MySQL'. Masukkan password yang valid (yang tadi dibuat saat menginstal MariaDB).
Selesai.
Jika ada kendala atau masukan, silakan sampaikan pada komentar.