Instal Apache, MySQL, PHP dan phpMyAdmin di Archlinux


Pada postingan yang lalu saya telah membahas bagaimana instal php server di Linux dengan XAMPP (Baca: XAMPP Langkah Awal Belajar Pemrograman Web). Sebetulnya dengan XAMPP itu lebih mudah dan pratis semua paket Apache, MySQL, PHP, Perl, dan phpMyAdmin semua sudah menjadi satu dan tinggal pakai saja.

Lain halnya jika kita menginstalnya satu persatu. Bagi Anda pengguna baru (dalam hal ini baru belajar pemrograman web dan Linux) saya lebih menyarankan Anda menggunakan XAMPP. Mengapa? Karena dengan hal itu ada tidak lagi dipersulit bagaimana menginstal web server. Belum lagi jika Anda baru di dunia Linux, yang cendrung beberapa distro Linux berbeda-beda cara instalnya sebut saja seperti Ubuntu, Fedora, Archlinux, dll. Pasti ini akan membuat Anda pusing dan membuang-buang waktu Anda. Karena itu, untuk minimalisir maka gunakan XAMPP. Terkecuali jika Anda memang sudah mahir atau setidaknya tahu dasar di Linux, memiliki banyak waktu luang dan senang mempelajari sesuatu yang baru, Anda boleh mencoba tutorial ini. Tutorial ini diperuntukan bagi pengguna distro Linux Archlinux atau turunannya. Dikarenakan kesehari-hariannya saya menggunakan Archlinux.

Tahap Prainstal

Sebelum memulai tutorial ini ada beberapa yang harus Anda persiapkan sebelum menginstal Apache, PHP, MySQL dan phpMyAdmin. Beberapa syarat tersebut adalah:

  • Pastikan sistem Anda sudah terupdate. Archlinux adalah distro rolling-release, untuk itu Anda harus tetap update jika ingin menginstal beberapa aplikasi.
  • Pastikan Anda sudah menginstal octopi atau pamac (bagi pengguna Manjaro). Ini untuk mempermudah instalasi beberapa modul php.
  • Pastikan untuk port 80 dan 3306 tidak digunakan aplikasi lain. Karena port 80 adalah default port yang digunakan Apache sedangkan port 3306 adalah default port yang digunakan oleh MySQL.

Tahap Instalasi

Menginstal Apache, Mariadb, PHP dan phpMyAdmin.

sudo pacman -S apache mariadb php-apache php-mcrypt phpmyadmin</blockquote>

Kemudian instal beberapa modul yang diperlukan php dengan octopi atau pamac (maaf karena saya menulis tutorial ini tidak mengguna Manjaro, jadi saya tidak dapat menampilkan screenshotnya). Dalam contoh ditutorial ini saya menginstal semua.

lampp-octopiTahap Konfigurasi

Setelah semua paket diinstal langkah selanjutnya adalah tahap konfigurasi agar semua paket tersebut dapat berjalan dengan sebagai mana mestinya.

Konfigurasi PHP

Agar Apache dapat menjalankan PHP diperlukan beberapa konfigurasi sebagai berikut:

gksu gedit /etc/httpd/conf/httpd.conf</blockquote>

Anda cari:

LoadModule mpm_event_module modules/mod_mpm_event.so</blockquote>

Kemudian Anda ganti dengan:

LoadModule mpm_prefork_module modules/mod_mpm_prefork.so</blockquote>

lampp-ss-2

Anda cari:

LoadModule dir_module modules/mod_dir.so</blockquote>

Kemudian tuliskan di bawahnya:

LoadModule php5_module modules/libphp5.so</blockquote>

lampp-ss-3Masukan:

Include conf/extra/php5_module.conf</blockquote>

lampp-ss-4

Lalu save dan jalankan httpd nya dari systemd

sudo systemctl start httpd</blockquote>

Untuk memastikan apakah PHP Anda sudah berjalan atau belum, coba Anda buat file tes.php dan masukan skrip berikut:

sudo su echo “<?php phpinfo();?>” > /srv/http/tes.php</blockquote>

Dan jalankan di browser Anda dengan mengetik:

https://localhost/tes.php</blockquote>

Jika sudah berjalan seperti gambar berikut berati Apache Anda telah sukses menjalankan PHP.

lampp-ss-5Tahap Konfigurasi MySQL

Sebelum menjalankan MySQL pastikan ada beberapa tahap yang perlu Anda lakukan yakni:

sudo chown mysql:mysql /var/lib/mysql -R sudo cp /etc/mysql/my.cnf /etc/my.cnf</blockquote>

Update tambahan 31-Agustus-2015 lakukan ini sebelum melalukan tutorial di bawah:

sudo mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql

Jika sudah coba tes apakah sudah berjalan dengan sebagai mana mestinya?

sudo systemctl start mysqld</blockquote>

Jika MySQL Anda sudah berjalan langkah selanjutnya Anda buat password root untuk masuk ke MySQL.

sudo mysql_secure_installation</blockquote>

Tahap Konfigurasi phpMyAdmin

Langkah selanjutnya mengkonfigurasi phpMyAdmin

gksu gedit /etc/php/php.ini</blockquote>

Aktifkan ektensi berikut:

extension=mysqli.so extension=mcrypt.so extension=bz2.so extension=mysql.so extension=zip.so</blockquote>

Pastikan openbase_dir Anda seperti berikut:

open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/</blockquote>

Kemudian buat file konfigurasi berikut:

gksu gedit /etc/httpd/conf/extra/httpd-phpmyadmin.conf</blockquote>

Dan masukan skrip berikut:

Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin"
<Directory "/usr/share/webapps/phpMyAdmin">
    DirectoryIndex index.html index.php
    AllowOverride All
    Options FollowSymlinks
    Require all granted
</Directory>

Lalu masukan berikut di:

gksu gedit /etc/httpd/conf/httpd.conf</blockquote>

dan masukan:

Include conf/extra/httpd-phpmyadmin.conf</blockquote>

Lalu restart httpd Anda:

sudo systemctl restart httpd</blockquote>

Cek di browser apakah phpMyAdmin dapat berjalan atau tidak?

https://localhost/phpmyadmin</blockquote>

lampp-phpmyadmin-1

lampp-phpmyadmin-2Tambahan (opsional)

Berikut ini adalah konfigurasi tambahan yang bisa Anda lakukan:

Menjalankan Apache dan MySQL di Startup

Jika Anda mengingkan Apache dan MySQL berjalan setiap kali Anda menyalakan komputer Anda (startup). Anda bisa melakukan:

sudo systemctl enable httpd mysqld</blockquote>

Menambah Kapasitas Maksimal Upload

Beberapa kapasitas upload pada jaringan lokal Anda perlu ditambah, guna untuk mempermudah Anda mengimpor gambar atau database Anda. Secara default, PHP mengizinkan maksimal upload sebanyak 2M. Sangat sedikit sekali, jika Anda ingin mengimpor database Anda yang berukuran lebih dari 2M maka tidak akan dizinkan. Oleh karena itu, perlu dirubah konfigurasinya, yakni sebagai berikut:

Buka file:

gksu gedit /etc/php/php.ini</blockquote>

Kemudian cari skrip berikut dan rubah sesuai dengan keinginan Anda:

memory_limit post_max_size upload_max_filesize</blockquote>

Semoga bermanfaat.