Aplikasi

Cara Instalasi Linux, Nginx, MariaDB dan PHP (LEMP) Stack di CentOS

Diterbitkan tanggal 15 June 2016 oleh kunto

LEMP merupakan serangkaian aplikasi open-source yang bisa dimanfaatkan untuk menghost situs dinamis maupun aplikasi berbasis web. Apabila dijabarkan, LEMP memiliki arti :

Linux = Sistem Operasi yang digunakan adalah Linux ( pada artikel ini menggunakan CentOS)

NginX (Engine X) = Digunakan sebagai Web Server

MariaDB = Database yang digunakan untuk menyimpan data Website.

PHP = Digunakan untuk memproses konten dinamis Website

Untuk menginstallnya, persiapkan KilatVM yang telah terinstall CentOS di dalamnya. Jika sudah, mari kita bergerak maju ke langkah pertama:


Langkah 1 - Installasi dan konfigurasi NGINX

Ketikkan perintah berikut untuk melakukan installasi NGINX

# sudo yum -y install epel-release
# sudo yum -y install nginx

Ketikkan perintah berikut untuk menjalankan Apache

# systemctl start nginx
# systemctl enable nginx on


Langkah 2 - Pengecekan Web Server

Untuk melakukan pengecekan fungsi Web server, akses IP KilatVM melalui web browser.

http://ip_kilatvm_anda/

Apabila telah tampil halaman informasi NGINX ,maka NGINX telah berhasil berjalan pada KilatVM anda.

Langkah 3 - Installasi MariaDB

Ketikkan perintah berikut untuk melakukan installasi MariaDB

# sudo yum -y install mariadb mariadb-server

Ketikkan perintah berikut untuk menjalankan MySQL

# systemctl start mariadb
# systemctl enable mariadb

Ketikkan perintah berikut untuk menambahkan root password mariadb

# mysql_secure_installation


Langkah 4 - Pengecekan Service MariaDB

Ketikkan perintah berikut untuk login ke dalam MariaDB

# mysql -u root -p

Apabila Anda telah berhasil login ke MySQL menggunakan user root dan dengan password yang telah anda buat pada langkah sebelumnya, maka MariaDB telah berhasil bekerja pada KilatVM anda. Selanjutnya ketikan perintah quit untuk keluar dari MariaDB.

Langkah 5 - Installasi PHP

Ketikkan perintah berikut untuk melakukan installasi PHP

# sudo yum -y install php-fpm php-mysql

Langkah 6 - Konfigurasi NGINX

Lakukan editing konfigurasi pada file /etc/nginx/conf.d/default.conf dengan mengetikan perintah:

# vi /etc/nginx/conf.d/default.conf

Hilangkan tanda pagar ( # ) pada baris php location, sesuaikan konfigurasinya seperti berikut ini :

#
# The default server
#
server {
    listen       80 default_server;
    server_name  103.23.20.223;

    #charset koi8-r;

    #access_log  logs/host.access.log  main;

    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    location / {
        root   /usr/share/nginx/html;
        index  index.php index.html index.htm;
    }

    error_page  404              /404.html;
    location = /404.html {
        root   /usr/share/nginx/html;
    }

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
     root           /usr/share/nginx/html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/html$fastcgi_script_name;
        include        /etc/nginx/fastcgi_params;
    }

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}

Lakukan editing juga pada file konfigurasi php-fpm untuk memberikan akses pada user dan grup NGINX. Ketikan perintah berikut 

# vi /etc/php-fpm.d/www.conf

Ubah user dan group Apache menjadi NGINX

# [...] 
; Unix user/group of processes
;Note: The user is mandatory. If the group is not set, the default user's group
;will be used.
;RPM: apache Choosed to be able to access some dir as httpd 
user = nginx 
;RPM: Keep a group allowed to write in log dir. 
group = nginx  
[...]

Langkah 7 - Pengecekan Fungsi PHP

Untuk melakukan pengecekan apakah PHP engine sudah bekerja pada KilatVM, lakukan percobaan dengan membuat sebuah file PHP pada direktori /var/www/html/

ketikkan perintah berikut untuk membuat file PHP

# vi /usr/share/nginx/html/info.php

pada file info.php ketikan baris code berikut

<?<code>php

<code>phpinfo();

<code>?>

Ketikkan perintah berikut untuk merestart PHP FPM dan NGINX

# systemctl restart php-fpm && systemctl restart nginx

Selanjutnya akses IP KilatVM melalui web browser

http://ip_kilatvm_anda/info.php

Kode yang Anda buat pada file info.php adalah kode untuk mengecek versi PHP pada KilatVM anda. Apabila Anda mengakses http://ip_kilatvm_anda/info.php nantinya akan tampil halaman informasi PHP Version maka PHP telah berhasil berjalan di KilatVM.

Bila Anda mengalami kendala atau memerlukan informasi lebih lanjut terkait proses Install Linux, Nginx, Mysql , PHP (LEMP) Stack di CentOS, silakan menghubungi support@cloudkilat.com. Atau kanal Twitter kami di @CloudKilat.

Tags: lemp, centos, cloud server