Panduan Install Nginx, MariaDB and PHP7 (LEMP Stack) pada Debian GNU/Linux 9 (stretch)

Didalam postingan kemarin sudah saya bahas bagaimana caranya kita mengakses SSH Google Cloud dengan menggunakan putty jika anda belum membaca silahkan baca dulu

Cara Mengakses Root SSH Google Cloud Menggunakan PUTTY

Sedangkan untuk pembahasan kali ini saya juga berikan tutorial bagaimanacara menginstal Nginx, MariaDB dan PHP7-FPM (LEMP stack) pada Debian GNU/Linux 9 (stretch).
saya akan coba merangkumnya step by step supaya tutorila ini mudah untuk anda mengerti dan anda pahami. nanti silahkan masuk sebagai root lalu silahkan ikuti panduannya di bawah ini.

Step 1: Update Debian GNU/Linux 9
Sebelum memasang perangkat lunak apa pun, selalu ada baiknya untuk memperbarui paket perangkat lunak dan repositori. SSH ke server Debian GNU/Linux 9 (stretch) anda dan masukkan perintah di bawah ini:

apt-get update
apt-get upgrade

Step 2: Install Nginx Web Server
Nginx adalah web server berkinerja tinggidan ketika anda ingin menginstal nginx webserver silahkan masukkan perintah dibawah ini:

apt-get install nginx

Setelah terinstal, kita dapat mengaktifkan Nginx untuk memulai otomatis ketika debian saat boot dengan menjalankan perintah berikut.

sudo systemctl enable nginx

output:

Synchronizing state of nginx.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable nginx

Restart Nginx

sudo systemctl restart nginx

Stop nginx server command

sudo systemctl stop nginx

Kemudian start Nginx dengan perintah

sudo systemctl start nginx

Sekarang periksa statusnya.

systemctl status nginx

Maka outputnya akan seperti ini:

● nginx.service - A high performance web server and a reverse proxy s
erver
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: en
abled)
   Active: active (running) since Fri 2018-08-24 05:06:40 UTC; 8min a
go
     Docs: man:nginx(8)
  Process: 25537 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5
--pidfile /run/nginx.pid (code=exited, status=0/SUCCESS)
  Process: 25546 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (cod
e=exited, status=0/SUCCESS)
  Process: 25544 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process
 on; (code=exited, status=0/SUCCESS)
 Main PID: 25548 (nginx)
    Tasks: 2 (limit: 4915)
   CGroup: /system.slice/nginx.service
           ├─25548 nginx: master process /usr/sbin/nginx -g daemon on; master_pr
ocess on;
           └─25549 nginx: worker process

“Enabled” menunjukkan bahwa auto start pada saat boot diaktifkan dan kita dapat melihat bahwa Nginx sedang berjalan.

Sekarang di ambil alamat browser Anda, ketik alamat IP publik dari server Debian GNU/Linux 9 (stretch)

Kebetulan karena untuk tutorial ini untuk IP saya adalah35.240.222.176 sekarang saya akan coba akses melalui browser.
Ketika di IP tersebut muncul halaman web ” Welcome to nginx!” itu artinya server Web Nginx anda berjalan dengan benar.

Contohnya seperti ini:

Nah setelah itu kita perlu membuat data-www (pengguna Nginx) sebagai pemilik direktori root web dengan perintah:

chown www-data /usr/share/nginx/html -R

Step 3: Install MariaDB
MariaDB adalah pengganti drop-in untuk MySQL. Ini dikembangkan oleh mantan anggota tim MySQL yang khawatir bahwa Oracle mungkin mengubah MySQL menjadi produk sumber tertutup. Banyak distribusi Linux (Arch Linux, Fedora dll), perusahaan dan organisasi (Google, Wikipedia) telah bermigrasi ke MariaDB. Jadi saya disini coba berikan panduannya cara menginstal MariaDB.

Silahkan ketikkan dengan perintah

apt install mariadb-client mariadb-server

Setelah kita berhasil instal, MariaDB server restart otomatis gunakan systemctl untuk check status.

systemctl status mysql

output

● mariadb.service - MariaDB database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset:
enabled)
   Active: active (running) since Fri 2018-08-24 06:25:43 UTC; 1min 2
3s ago
 Main PID: 27891 (mysqld)
   Status: "Taking your SQL requests now..."
   CGroup: /system.slice/mariadb.service
           └─27891 /usr/sbin/mysqld

Sekarang jalankan untuk install security script.

mysql_secure_installation

Silahkan ganti pasword sesuai dengan keinginan anda lalu ENTER dan ulangi kembali untuk verifikasi password anda dan tekan ENTER

Setelah itu anda abaikan saja cukup dengan menekan ENTER…ENTER … ENTER… ENTER untuk menjawab pertanyaan yang tersisa.

Ini akan menghapus pengguna anonim, menonaktifkan login root jarak jauh dan menghapus basis data uji coba. Langkah ini merupakan persyaratan dasar untuk keamanan basis data MariaDB.

Oke setelah ini saya akan lanjutkan…cara install PHP7 …masih semangatkan bacanya…?? :):)
boleh kok anda sambil scrol lagi ke atas untuk baca-baca lagi untuk supaya anda lebih paham…

oke…sebentar tak buat kopi dulu ya…biar tetep fokus…
cieee…serius banget belajarnya!!

Santai aja brother….:)
karena kadang kalo terlalu spaneng soal coding bisa tambah puyeng ntar.

Lanjut ya….!oke, untuk yang selanjutnya adalah masuk ke Step 4

Step 4: Install PHP7
Masukkan perintah berikut untuk memasang PHP7 dan PHP7 extensions

apt install php7.0-fpm php7.0-mbstring php7.0-xml php7.0-mysql php7.0-common php7.0-gd php7.0-json php7.0-cli php7.0-curl

Sekarang setelah selesai instal anda coba jalankanphp7.0-fpm.

systemctl start php7.0-fpm

Silahkan cek statusnya:

systemctl status php7.0-fpm

Output:

● php7.0-fpm.service - The PHP 7.0 FastCGI Process Manager
   Loaded: loaded (/lib/systemd/system/php7.0-fpm.service; enabled; vendor prese
t: enabled)
   Active: active (running) since Fri 2018-08-24 07:12:25 UTC; 4min 1
3s ago
     Docs: man:php-fpm7.0(8)
 Main PID: 5614 (php-fpm7.0)
   Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/se
c"
   CGroup: /system.slice/php7.0-fpm.service
           ├─5614 php-fpm: master process (/etc/php/7.0/fpm/php-fpm.conf)
           ├─5615 php-fpm: pool www
           └─5616 php-fpm: pool www

Oke berhasil ya…selanjutnya adalah anda tinggal buat file block nginx server default, langkahnya dengan cara kita menghapus symlink default di direktori yang diaktifkan oleh situs.

Caranya buat perintah dengan:

sudo rm /etc/nginx/sites-enabled/default

Kemudian silahkan buat file blok server default baru di direktori /etc/nginx/conf.d/

nano /etc/nginx/conf.d/default.conf

Silahkan isikan script dibawah ini dan tinggal anda ganti untuk IP servernya:

server {
  listen 80;
  listen [::]:80;
  server_name 35.240.222.176;
  root /usr/share/nginx/html/;
  index index.php index.html index.htm index.nginx-debian.html;

  location / {
    try_files $uri $uri/ =404;
  }

  error_page 404 /404.html;
  error_page 500 502 503 504 /50x.html;

  location = /50x.html {
    root /usr/share/nginx/html;
  }

  location ~ \.php$ {
    fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    include snippets/fastcgi-php.conf;
  }

  location ~ /\.ht {
    deny all;
  }
}

Contohnya seperti ini:

Setelah anda menyimpannya maka anda bisa test konfigurasi nginx perintahnya dengan:

nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Jika anda mau restrart nginx bisa perintahkan saja dengan:

service nginx restart

STEP 5: Test PHP

Untuk mengetahui versi cli PHP7, kita hanya perlu memasukkan perintah ini:

php --version

contoh output :

PHP 7.0.30-0+deb9u1 (cli) (built: Jun 14 2018 13:50:25) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.0.30-0+deb9u1, Copyright (c) 1999-2017, by Zend Technologies

Untuk mencoba PHP-FPM, pertama-tama harus buat file test.php di direktori root Web caranya dengan mengetikkan perintah berikut:

nano /usr/share/nginx/html/test.php

Setelah itu isikan dengan kode PHP berikut ini:

<?php phpinfo(); ?>

untuk lebih jelasnya perhatikan contoh dibawah ini:

Untuk melihat hasilnya apakah sejauh ini langkah yang anda kerjakan sudah berhasil atau belum silahkan anda test dengan membukanya melalui browser contohnya :

Untuk server IP dalam tutorial inikan saya pakai IP: 35.240.222.176jadi untuk membukanya melalui browser tinggal ketik ajaserver-ip-address/test.php contohnya35.240.222.176/test.php

Setelah dibuka di browser muncullah seperti ini:

Oke…Selamat buat anda karena anda hari ini telah belajar cloud dan anda telah berhasil Install Nginx, MariaDB and PHP7 (LEMP Stack) pada Debian GNU/Linux 9 (stretch)

Jika anda belum praktek segera praktek, untuk tutorial selanjutnya, pastinya juga akan lebih menarik karena saya akan semakin lebih detail dalam memberikan panduan penggunaan server cloud unmanage

Mau belajar server…..?

Lanjutkan baca-baca disini →