Featured Post
Belajar Debian 10 — Membuat Web Server dengan Apache, Mysql dan Php
Apa yang dibutuhkan?
- Terhubung ke suatu jaringan untuk simulasi client — server, karena menggunakan VirtualBox anda bisa baca tutorial berikut :
Membuat Jaringan Antara PC Host dan PC Fisik di VirtualBox - Debian sudah ter konfigurasi repository (untuk memasang aplikasi), anda bisa membaca tutorial berikut :
Cara Konfigurasi Repository dari APT di Debian 10
Web Server
Web server adalah perangkat lunak yang berfungsi sebagai penerima permintaan yang dikirimkan melalui browser kemudian memberikan tanggapan permintaan dalam bentuk halaman situs web atau lebih umumnya dalam dokumen HTML.
Aplikasi Yang Diperlukan
- apache2
- php7.3
- mysql / maria-db
Disini kita akan memasang maria-db, mariadb meruakn versi open-surce dari mysql. Jad anda juga bisa memaka mysql jika perlu.
Ingat!!!
Ingat untuk selalu melihat note yang saya cantumkan dibawah, php7.3 secara default telah tersematkan di repo Debian10. Jadi jika Debian yang anda gunakan belum Debian 10 maka wajib untuk mengganti beberapa kode instalasi php7.3 ke php biasa, seperti :
# Debian 10 :
apt install php7.3
apt install php7.3-mysql
apt install libapache2-mod-php7.3# Under Debian 10 :
apt install php
apt install php-mysql
apt install libapache2-mod-php
Memasang Aplikasi Apache2
apt install apache2
Uji Coba Web Server Apache2
Gunakan komputer client lain yang terhubung ke jaringan yang sama, lalu buka browser dan maskan ip server debian kita.
# url :
http://alamat_ip_server
# contoh :
http://10.0.0.1
Akan keluar halaman default yang diberikan oleh apache, ni menandakan apache2 sudah berhasil berjalan dengan baik.
File Web Apache
Default file web apache berada pada /var/www/html
, file web ini berfungsi sebagai tempat penyimpanan web yang akan di buka secara default di browser nantinya. Lalu bagaimana kalau kita ingin merubah lokasi penyimpanan web tadi ?
Pertama tama kita edit file konfigurasi berikut :
nano /etc/apache2/sites-available/000-default.conf
Cari bagian DocumentRoot dan ubah value sesuka hati kalian
Sebagai contoh saya ubah ke /home/alfiandwi/web
, pastikan folder yang kalian tuju benar dan ada. Jika belum ada gunakan perintah mkdir
untuk membuat folder tersebut.
Setelah dirubah, save dengan cara ctrl + x
ketik Y lalu enter untuk keluar dan save.
Setelah merubah suatu konfigurasi, pastinya anda jangan lupa untuk merestart service apache2 :
/etc/init.d/apache2 restart
Dan sekarang coba akses url http://localhost
kembali dan pastikan sudah berhasil berpindah folder, agar folder yang diganti tadi memiliki isi singkat untuk tes saja, gunakan perintah dibawah ini untuk membuat file tes :
echo "<h1>TES SAJA</h1>" >> /home/alfiandwi/web/index.html
Ganti /home/alfiandwi
dengan folder yang kalian ubah di DocumentRoot tadi.
Memasang PHP
apt install php7.3
Note : php7.3 tersedia secara default di Debian 10, jika anda mengguakan Deian dibawah 10 silahkan ganti menjadi apt install php
.
sebenarnya kita juga perlu memasang aplikasi lagi yang bernama libapache2-mod-php7.3 yang berfungsi sebagai jembatan penghubung antara php dengan apache2, tetapi bisa diliat di gambar diatas, dimana ketika saya menginstall php7.3 saya juga akan di instalasikan secara otomatis aplikasi libapache2-mod-php7.3. (lihat lingkaran merah di gambar)
Jika belum terpasang, anda bisa memasang nya sendiri dengan kode berikut :
apt install libapache2-mod-php7.3
Note : Jika menggunakan versi Debian dibawah 10, ganti libapache2-mod-php7.3
menjadi libapache2-mod-php
Ceck Apakah PHP sudah Terhubung dengan Apache2
gunakan perintah singkat dibawah untuk membuat file php. gunakan root untuk membuat file berikut.
echo "<?php phpinfo(); ?>" >> /var/www/html/info.php
Note : Jika anda sudah mengubah DocumentRoot di virtualhost apache2 tadi, maka ubah juga kode diatas sesuai dengan folder yang dituju.
Lalu coba akses di komputer client, akses alamat url :
# url :
http://alamat_ip_server/info.php# contoh :
http://10.0.0.1/info.php
Jika muncul halaman seperti gambar diatas, maka selamat, php sudah terhubung dengan Apache2.
Memasang Mysql / Maria-db
apt install mariadb-server
Konfigurasi Standar Mysql / Maria-db dengan Wizzard
Jalankan perintah berikut :
mysql_secure_installation
setelah mengetik perintah diatas, kalian ikutilah wizzardnya step by step, step pertama adalah kita disuruh memasukan password lama root kita :, enter saja karena baru pertama kali kita pasang.
lalu, ketik y untuk melanjutkan :
Barulah masukan password baru yang akan kalian gunakan nantinya :
Lalu opsi hapus akun anonymous, disarankan untuk hapus saja, karena ini mengijinkan orang tanpa akun bisa login.
Lalu apakah ingin mematikan remote?, disini saya akan menginjinakn remote, jadi kita ketik N saja
Lalu kita diberi pilihan apakah mau menghapus database “test”, database itu hanya sekadar demo saja, kalian bisa menghapusnya juga.
Disini kita akan mereload database privileges, tekan Y saja agar beberapa informasi dapat diperbarui
Dan yups selesai!!
Uji Coba Mengakses Database Mysql / Mariadb
masukan perintah berikut untuk masuk ke database dengan user root :
mysql -u root -p
Jika ditanya masukan password, masukan password yang sudah kita buat tadi
lalu enter setelah memasukan password :
Dan yups, kita sudah dapat mengakses mysql dengan user root. Ketik “exit” lalu enter atau ctrl + d
untuk keluar dari akses mysql.
Menghubungkan PHP dengan Database Mysql / Mariadb
apt install php7.3-mysql
Note : jika anda menggnakan Debian dibawah Debian 10, gunakan apt install php-mysql
Karena tadi kita menginstall php7.3, jadi disini kita bisa tuliskan php7.3-mysql
setelah instalasi selesai, sekarang php sudah dapat terkoneksi ke mysql.
Uji Coba PPHP terhubung dengan Mysql / Mariadb
Membuat User Baru untuk Mysql / Mariadb
masuk dahulu ke mysql :
mysql -u root -p
Buat database baru untuk contoh :
CREATE DATABASE tes;
lalu gunakan perintah berikut untuk membuat user baru :
CREATE USER 'NAMA_USER'@'%' IDENTIFIED BY 'PASSWORD_USER';
sebagai contoh :
CREATE USER 'viandwi24'@'%' IDENTIFIED BY '12345';
Lalu beri hak akses database yang kita buat tadi ke user yang kita buat baru juga :
GRANT ALL PRIVILEGES ON *.* TO 'NAMA_USER'@'%' WITH GRANT OPTION;
Contoh :
GRANT ALL PRIVILEGES ON *.* TO 'viandwi24'@'%' WITH GRANT OPTION;
Setelah itu bisa keluar dengan menekan ctrl + d
atau ketik exit lalu enter.
Membuat File PHP Untuk Tes Terhubung Ke DB
Buat sebuah file baru bernama tes.php dengan apliakasi text editor seperti nano atau vi
touch /var/www/html/tes.php
Note : Jika anda sudah mengubah DocumentRoot di virtualhost apache2 tadi, maka ubah juga kode diatas sesuai dengan folder yang dituju.
lalu :
nano /var/www/html/tes.php
Note : Jika anda sudah mengubah DocumentRoot di virtualhost apache2 tadi, maka ubah juga kode diatas sesuai dengan folder yang dituju.
lalu isi file tersebut dengan :
<?php
if (!mysqli_connect('localhost', 'USER_ANDA', 'PASSWORD_ANDA', 'mysql')) {
die('Koneksi gagal: ' . mysqli_connect_error());
}echo 'Koneksi berhasil';
?>
Ganti tulsian USER_ANDA diatas dengan user baru yang anda buat tadi dan tulisan PASSWORD_ANDA gnti dengan password kalian yang kalian buat tadi di mysql, sebagai contoh saya menggunakan password “12345" untuk passwrod dari user “viandwi24” tadi maka saya ganti dengan 1 :
<?php
if (!mysqli_connect('localhost', 'viandwi24', '12345', 'mysql')) {
die('Koneksi gagal: ' . mysqli_connect_error());
}echo 'Koneksi berhasil';
?>
Save file tersebut dengan ctrl + x
lalu tekan Y untuk menyimapn dan keluar dari nano.
Lalu lakukan uji coba di komputer client, ketikan url berikut :
http://ALAMAT_IP_SERVER/tes.php
contoh :
http://10.0.0.1/tes.php
dan yups, pastiakn tulisan “koneksi berhasil” keluar.
Posting Komentar
Posting Komentar