Cara Deploy Django di cPanel Menggunakan Python App

MasRaka - Jadi, kemarin saya mendapatkan pengalaman baru untuk mengetahui cara deploy Django ini melalui customer yg kesulitan untuk deploy Django.

Jadi sesuai tagline MasRaka - Learn Faster Learn Better, setiap ada masalah, cari solusinya dengan waktu yang cepat dan tepat, berbagi ke teman-teman semua. Hehe 😄.

Apa itu Django

Yap, jika kamu belum tau apa itu Django.
Django adalah Web Framework berbasis Python yang didesain untuk membuat semacam aplikasi website yang dinamis.
Seperti yang kita ketahui, banyak Web Framework yg berbasis Python, namun yang dibahas saat ini adalah Django.

Bahan Deploy

Bahan-bahan yang diperlukan adalah hosting, domain dan secangkir kopi. Jika kamu belum memiliki hosting, berikut rekomendasi provider hosting yang murah, aman dan dapat diandalkan. Kunjungi: Klik disini.
Mari kita mulai dengan cara deploynya.

Deploy Django

Pertama: Buka cPanel dan klik menu Setup Python App.


Kedua: Setup aplikasi Python baru.
Untuk setup ini disarankan menggunakan versi python terbaru, untuk saat ini adalah 3.5. Kemudian, pada App Directory dan App Domain sesuaikan dengan keinginan kamu.


Ketiga: Tambahkan Modul Django.
Jika kamu sudah melakukan setup aplikasi baru, akan muncul aplikasi yang kamu buat di-list Existing Applications.

Klik show modules, search Django, kemudian tambahkan versi Django terbaru. Di sini saya menggunakan versi 2.1, kemudian klik add.


Keempat: Update dan Restart aplikasi.
Setelah ditambahkannya modul Django, klik Update dan Restart.

Kelima: Tambahkan WSGI File Location.
Setelah direstart masuk ke Virtual Enviroment aplikasi Python, dengan cara buka akses ke SSH hosting kamu. Kemudian, tulis command berikut:
$ source /home/rakalsoc/virtualenv/py.rakalso.com/3.5/bin/active
$ django-admin startproject mysite
$ cd mysite/mysite/
$ pwd
/home/rakalsoc/py.rakalso.com/mysite/mysite
Django-admin startproject itu untuk membuat project baru dengan nama mysite. Kemudian pindah ke directory mysite/mysite untuk melihat file wsgi.py dan path lengkapnya, ketik command pwd maka akan ditampilkan path lengkapnya. 

Lalu tambahkan path tersebut ke dalam wsgi file location dengan cara Edit. Sehingga hasilnya:
/home/rakalsoc/py.rakalso.com/mysite/mysite/wsgi.py
Update dan restart aplikasinya, maka file locationnya akan berubah menjadi: 
mysite/mysite/wsgi.py:application

Keenam: Membuat app
Ikuti command berikut untuk membuat app baru, pastikan kamu sudah berada di dalam directory mysite/ yang berisikan file manage.py:
$ python manage.py startapp polls
$ cd polls/
$ ls
__init__.py
admin.py
apps.py
migrations/
models.py
tests.py
views.py  
Kemudian perlu membuat view dengan script dan perintah berikut:
$ nano views.py

from django.http import HttpResponse 

def index(request): 
return HttpResponse("Hello, world. You're at the polls index.") 

Lalu, perlu membuat urls.py untuk memanggil view tersebut dengan script dan perintah berikut:
$ nano urls.py

from django.urls import path

from . import views

urlpatterns = [
    path('', views.index, name='index'),
]

Selanjutnya, untuk melakukan point root URLConf pada polls.urls module perlu menambahkan beberapa script import include pada mysite/urls.py dengan script dan perintah berikut:
$ nano urls.py

from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path('polls/', include('polls.urls')),
    path('admin/', admin.site.urls),
]

Setelah membuat polls app, kamu perlu menambahkan beberapa script di dalam mysite/wsgi.py supaya dapat mengenali mysite.settings. Dengan script dan perintah berikut:
$ nano wsgi.py

import os
import sys
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(BASE_DIR)

from django.core.wsgi import get_wsgi_application

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings')

application = get_wsgi_application()

Yang perlu ditambahkan adalah line yang saya bold (tebal-kan).

Ketujuh: Tambahkan Allowed Hosts Jika kamu tidak menambahkan Allowed Hosts, maka saat diakses akan muncul error DissallowedHost, Invalid HTTP_HOST header. Penambahan Allowed Hosts ini ada pada directory mysite/ Ikuti script dan perintah berikut:
$ nano settings.py 
Cari kata berikut "ALLOWED_HOSTS". 
Dan tambahkan menjadi: ALLOWED_HOSTS = ['py.rakalso.com']

Kedelapan: Restart aplikasi python dan coba akses. Setelah mengikuti semua intruksi diatas, restart aplikasi python dan coba akses URL nya. Maka hasilnya akan seperti berikut.

Nah, bagaimana? Deploy Django di cPanel dengan menggunakan Python App cukup mudah bukan?

Mungkin sampai di sini saja artikel Cara Deploy Django di cPanel Menggunakan Python App.

Jika ada yang ingin ditanyakan, silakan berkomentar dibawah.
Terimakasih telah berkunjung 😊

Solusi Gagal atau Tidak Bisa Login WP-Admin Wordpress


MasRaka - Kemarin baru saja dapat masalah, karena ada salah satu wordpress saya yang tidak bisa login. Setiap ingin login ke wp-admin selalu redirect ke homepage, dan setiap ingin ke salah satu akses di dalam wp-admin, seperti contoh: wp-admin/profile.php selalu ada notifikasi:

(Maaf, Anda tak diizinkan mengakses laman ini.) atau (Sorry, you are not allowed to access this page.)

Ada beberapa kemungkinan, mari kita bahas satu per satu secara detail.

Pertama: .htaccess


Pastikan htaccess nya tidak ada script yg memblock apapun di dalam file core wp-admin.


Kedua: Theme atau Template


Pastikan juga theme atau template kamu tidak error. Jika error, kamu bisa rename theme tersebut menjadi apapun, contoh: Theme-old. Lalu coba akses kembali.


Kamu juga bisa menonaktifkan plugins melalui table _options cari active_plugins, fieldnya rubah menjadi a:0:{}. (Jangan lupa simpan dahulu field sebelumnya).


Ketiga: WP-Admin

Pastikan juga pada wp-admin kamu tidak ada yg corrupt. Jika corrupt, kamu bisa download wordpress masterya pada wordpress.org. Kemudian extract file tersebut, cari directory/folder wp-admin, nantinya wp-admin ini yang akan di upload untuk menggantikan wp-admin lamanya.


Keempat: Firewall

Ada juga kendala pada sisi Firewall Server, kalau untuk hal ini kamu perlu tanyakan ke pihak provider yang kamu hosting. 

Terakhir, masalah yang saya hadapi: Hak Akses

Yap, ini adalah solusi terakhir pada masalah yang saya hadapi. Saya sudah muter-muter tidak ketemu caranya, namun setelah lihat-lihat pada Table di PHPMyAdmin akhirnya ketemu!

Ini masalah yang cukup menjengkelkan. Yuk mari bahas dahulu.

Jadi, setelah login ke wp-admin, akan redirect ke homepage, bukan ke Dashboard Admin Wordpressnya. 



Kemudian coba akses ke wp-admin/profile.php sampai bertemu dengan error berikut:



Note: hal ini tidak berkaitan dengan sisi hosting/server, jadi jika hosting provider mu tidak bisa membantu, hal tersebut wajar. Namun jika bisa membantu sampai tuntas, patut diacungkan jempol! Hal ini seharusnya diluar scope support pihak hosting/server. Karena kendalanya bukan dari sisi hosting maupun servernya, tetapi dari Wordpress.

Bagaimana langkah menyelesaikannya?

Buka menu PHPMyAdmin pada cPanel kamu, kemudian ke table _users. Pastikan usernya terdaftar di table tersebut. 



Pada table ini menyatakan bahwa saya memiliki 2 akun, yaitu dengan username rakalso (dengan userID: 1) dan adminmasraka (dengan userID: 2).

Kemudian, pastikan juga memiliki kapabilitas pada table _usermeta, kemudian search capabilities.


Nah, pada table ini menyatakan bahwa kapabilitas hanya dimiliki oleh akun dengan userID 1, yaitu username rakalso sebagai Editor. Kemudian dengan userID 2, yaitu adminmasraka ini tidak memiliki kapabilitas. Sehingga saat ingin akses ke wp-admin tidak memiliki akses.

Caranya adalah buat baru untuk userID 2 dengan cara pilih tombol copy. Samakan seperti dibawah ini jika ingin menjadikan role Administrator.


Hasilnya akan seperti ini:


Berikut adalah User Level Capabilities default dari Wordpress:

s:13 - Administrator
s:11 - Contributor
s:6 - Editor
s:6 - Author
s:10 - Subscriber

Sesuaikan saja dengan kebutuhan kamu.

Jika sudah, coba akses kembali wp-adminnya, seharusnya sudah berhasil.

Yap! Berhasil sudah cara terakhir yang saya alami ini, memang sangat menjengkelkan, bukan? 😅

Happy Blogging!

Segini saja untuk artikel Solusi Gagal atau Tidak Bisa Login WP-Admin Wordpress.

Terimakasih telah berkunjung.
Semoga bermanfaat, jika ada pertanyaan silakan berkomentar dibawah.

Perbedaan Akses SSH Normall Shell dan Jailed Shell



MasRaka - Fitur ini diberikan oleh Software Manajemen cPanel WHM dengan memberikan akses SSH (Secure Shell) ke hosting. Nah ada dua macam shell yg bisa diaktifkan/diberikan ke pengguna, yaitu Normal Shell dan Jailed Shell. 

Banyak sekali keluhan atau pertanyaan mengenai perbedaan normal shell dan jailed shell pada akses SSH.

Karena biasanya pada normal shell saat login ada error message:

-bash: PROMPT_COMMAND=history -a: command not found.

Yuk simak perbedannya.

Perbedaan

Perbedaannya adalah Normall Shell memiliki akses normal terhadap akses SSH yang diberikan, lebih luas pada command-commandnya. 
Sedangkan untuk Jailed Shell memiliki akses yang terbatas pada command yang bisa digunakan.

Normall Shell umumnya digunakan oleh para developer, sedangkan untuk Jailed Shell biasanya digunakan oleh para pengguna yg belum mengetahui lengkap tentang command Linux. 

Nah, kalau kamu ada error message seperti diatas dan ingin dihilangkan, contact pihak hosting kamu untuk merubah akses nya menjadi Jailed Shell.

Bagaimana? Sudah paham perbedaannya? 

Mungkin segitu saja artikel mengenai Perbedaan Akses SSH Normall Shell dan Jailed Shell.

Jika ada yang ingin ditanyakan, silakan berkomentar 😀 

Melakukan Pembayaran Layanan Dewaweb via Go-Pay


MasRaka - Melakukan pembayaran layanan Dewaweb via Go-Pay, memang bisa?
Tentu bisa, beberapa waktu lalu pihak Dewaweb merilis perdana Merchant / Payment Gateway baru mereka, yaitu MidTrans. Jadinya total ada 2 Payment Gateway, iPay88 dan MidTrans.

Perbedaan MidTrans

Bedanya adalah MidTrans bisa menyediakan pembayaran melalui Go-Pay, siapa yang tidak tahu virtual pembayaran seperti Go-Pay? Yang pasti tidak mungkin, karena sudah sangat hype untuk semua kalangan jika pernah order salah satu layanan yang disediakan Go-Jek.

Fitur Go-Pay

Yup, Go-Pay sudah menjadi andalan era digital saat ini untuk mencukupi kebutuhan masyarakat, bayar Warteg atau Warung Makan yang sudah terintegrasi dengan Go-Jek, bisa bayar pakai Go-Pay.

Lucu ya, uang sekarang sudah sangat virtual dan yang fisik hanya berapa % saja. Mau bagaimana lagi, sudah tuntutan jaman di era digital sekarang.


Nah, kebetulan saya ada Invoice yang jatuh tempo dan perlu pembayaran, lalu saya sekalian saja buat artikel tentang Bayar via Go-Pay di Dewaweb.


Details Invoice

Pertama, kalian harus ke detail invoice dahulu di halaman Client Area Dewaweb, dengan cara:
Invoice / Billing -> Klik Invoice yg dimaksud.

Rubah Metode Pembayaran




Kedua, rubah metode pembayaran menjadi Credit Card / E-Banking / Go-Pay (MidTrans), kemudian klik Proceed To Payment.

Cek Order Details & Customers Detail


 






Ketiga, pada pop-up Order Summary yang muncul setelah diklik Proceed to Payment, cek pada Order Details  dan Customer Details, pastikan sudah sesuai dengan data dan nomor invoice serta jumlah pembayaran kalian, kemudian Continue.

Select Payment


Keempat, pilih payment yang ingin di-gunakan, karena di sini kita akan menggunakan Go-Pay, maka pilih payment Go-Pay.

Saldo Go-Pay

 


Kelima, pastikan saldo Go-Pay kalian mencukupi atau lebih dari jumlah pembayaran dari Invoice yang ingin dibayarkan. Poup berikutnya setelah memilih Payment akan diberikan intruksi tentang cara membayarkannya. Lanjutkan dengan klik Pay Now with Go-Pay.

Pay



Keenam, setelah lanjut akan muncul barcode Go-Pay. Perlu cepat melakukan pembayaran, karena hanya diberikan waktu 15menit setelah Barcode muncul.
Buka aplikasi Go-Jek, kemudian pilih fitur "Pay" pada menu Home. Scan barcode yg diberikan Dewaweb.

Review Payment

Akan muncul pop-up Review Payment pada alikasi Go-Jek, pastikan jumlah pembayarannya sudah sesuai, jika sudah klik Confirm & Pay.

Payment Successful










Setelah Confirm & Pay, pembayaran langsung diauthorisasi otomatis dan Invoice pada Dewaweb sudah langsung lunas / paid. Klik fitur "More" pada menu Home, kemudian pilih History. Akan tampil history pembayaran sebelumnya.



Bagaimana? Mudah bukan? 

Yap, mungkin ini saja artikel tentang Melakukan Pembayaran Layanan Dewaweb via Go-Pay. 

Terimakasih telah berkunjung, jika ada pertanyaan silakan berkomentar dibawah.

Cara Mengamankan Website


MasRaka - Mengamankan Website, hal itu sangat penting dilakukan apabila ingin website kamu lancar dan tidak ada yang usil.

Karena jaman sekarang security online itu penting, selain hacker maupun cracker yang mulai banyak. Ada banyak cara yang perlu dilakukan untuk mengamankan website, ada yang berbayar dan juga yang gratis, nah saya akan berbagi yang gratis. Karena yang gratis itu menyenangkan bukan? 😄

Cara Mengamankan Website

Okay, yang pertama kalian harus memiliki sebuah website terlebih dahulu. Hampir 90% bisnis online maupun website yang sudah berjalan di internet, menggunakan CMS (Content Management Site) Wordpress.

Untuk instalasi wordpress kalian dapat cek Cara Instalasi Wordpress di cPanel Hosting. Untuk hosting maupun domain kalian bisa cek di sini.

Password Yang Kuat

Yap, setiap website ber-CMS tentunya memiliki akses login ke halaman adminnya. Nah, untuk password yang kamu gunakan ini harus kuat. Maksudnya kuat apa sih? Kuat itu dalam artian menggunakan kombinasi huruf, angka, kode, simbol
Contoh: WMvX2xQ7hLybBbBB

Jangan pernah gunakan password: admin, admin123, 123456, 123 maupun sejenisnya. Percayalah, itu sangat rentan dibobol.

Untuk password generator kalian bisa kunjungi PasswordGenerator.

Username Yang Unik

Username dan Password memang harus sama-sama kuat, username gunakan yang unik. Jangan pernah gunakan username admin / user. Gunakan username yang unik, seperti: 4dm1n. adminnih.

Gunakan Original Script

Jangan pernah juga gunakan script, themes maupun plugins yang gratisan (nulled) yang didownload dari website yang tidak resmi. Versi nulled biasanya disisipkan suspicious / malicious file yang sudah di enkripsi, bisa jadi itu adalah malware yang bisa mengirimkan spam terhadap email yang digunakan.

Akses Secukupnya

Maksudnya adalah jangan pernah membagikan akses ke halaman admin kepada orang lain, pilihlah orang terpercaya. Jika kamu memiliki seorang penulis di blog, maka berikan akses Author saja. Karena scope akses yang didapatkan tidak leluasa seperti administrator.

Antivirus

Gunakan antivirus yang up-to-date pada PC yang digunakan, karena virus jaman sekarang jika sudah menginfeksi PC dan kamu menggunakan Outlook, lalu ada SMTP Port yang terbuka, maka malware tersebut akan meng-lock port tersebut, kemudian spam itu akan terkirimkan secara otomatis. Virus-virus ini jika kamu menggunakan windows, maka akan nempel di sisi OSnya.

Plugins Security

Jika kamu menggunakan Wordpress, maka sebaiknya kamu install Plugins Security seperti Wordfence, iThemes Security.

Plugins security tersebut membantu memblock request threat yang masuk, bahkan bisa mengantisipasi brute-force pada wordpress lho.

Selain itu jika kamu menggunakan iThemes Security Pro, maka akan ada fitur malware scanner scheduling, dan fitur lainnya.

Aktifkan 2 Langkah Keamanan

Yup, kamu wajib banget mengaktifkan 2-step verification, kalau kamu juga pakai Wordpress, install saja Wordpress 2-step verification plugins, atau bisa gunakan fitur dari plugins security diatas.

Hal ini berguna menghindari juga akses tanpa izin, misalnya, kamu pernah kasih akses Administrator login ke teman, atau freelancer. Sebaiknya setelah kerjaan mereka selesai langsung aktifkan 2-step verification untuk menghindari abuse atau penyalahgunaan.

Yap, mungkin segitu saja tutorial kali ini tentang Cara Mengamankan Website. Jika ada pertanyaan atau ingin menambahkan seputar tipsnya silakan berkomentar dibawah.

Terimakasih telah berkunjung.

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



MasRaka - LEMP ini sudah populer digunakan oleh pada user Linux maupun Sysadmin. Biasanya, M itu adalah MySQL, namun karena yang populer di akhir-akhir ini adalah MariaDB, maka kita gunakan MariaDB pada tutorial instalasi di artikel ini.

Selain itu, Nginx ini free (gratis), open-source dan high performance untuk HTTP Server. Juga Nginx ini lebih stabil dari Apache.

Lebih Stabil

Dikarenakan Nginx ini melayani 1 proses untuk 1 thread, sedangkan apache kebalikannya. Sehingga jika ada proses yang stuck, maka hanya thread yang melayani proses itu yang akan stop. Sangat stabil bukan?

Kemudian untuk instalasi LEMP ini dibutuhkan VPS. Kalau belum memilikinya, saya sarankan untuk order pada provider yang satu ini, karena murah dan good performance. Klik disini.

Namun jika sudah memilikinya, langsung saja simak berikut.

Instalasi LEMP

Step 1 - Install Nginx

Instalasi Nginx menggunakan repository rpm untuk downloadnya bisa melalui website resminya.
### CentOS 7 ###

# rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

### RHEL 7 ###

# rpm -Uvh http://nginx.org/packages/rhel/7/noarch/RPMS/nginx-release-rhel-7-0.el7.ngx.noarch.rpm
Install Nginx menggunakan command berikut.
# yum install nginx -y
Start Nginx setelah proses instalasi.
# systemctl start nginx

Step 2 - Firewall

Untuk instalasi Firewall menggunakan CSR dan sudah dijelaskan pada artikel berikut, klik disini.


Setelah instalasi Nginx, coba akses http://ip-vps/. Jika sudah muncul "Welcome to Nginx!" atau default page Nginx, maka artinya instalasi Nginx berhasil.

Default document root Nginx di CentOS 7 ada pada /usr/share/nginx/html/. Dan untuk konfigurasinya ada pada /etc/nginx.

Step 3 - Install MariaDB

Instalasi MariaDB menggunakan command berikut.
# yum install mariadb mariadb-server -y
Start MariaDB jika proses instalasi sudah selesai.
# systemctl start mariadb
Enable MariaDB untuk start otomatis selama system boot.
# systemctl enable mariadb 
Jika proses instalasi MariaDB sudah selesai, lakukan secure MariaDB menggunakan command mysql_secure_installation

Step 4 - Install PHP

Selanjutnya perlu instal PHP menggunakan command berikut.
# yum install php-fpm php-mysql -y
Kemudian perlu membuat virtual host di dalam directory /etc/nginx/sites-available/ dengan membuat file masraka.net (sesuaikan dengan nama domain kalian).

Konfigurasinya berikut.
server {
        listen 80;
        root /var/www/html;
        index index.php index.html index.htm index.nginx-debian.html;
        server_name masraka.net;

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

        location ~ \.php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
        }

        location ~ /\.ht {
                deny all;
        }
}
Setelah sudah menambahkan konfigurasi tersebut dan menyimpannya, close file tersebut. Buatlah symbolick link dari sites-enabled ke sites-available, supaya tidak rumit membuat kedua configurasi manual. Dengan cara:
# sudo ln -s /etc/nginx/sites-available/masraka.net/etc/nginx/sites-enabled/
Test konfigurasi tersebut apakah ada syntax error atau tidak, dengan cara berikut.
# nginx -t

Step 5 - Membuat PHP file untuk test konfigurasi

Biasanya, untuk melakukan test ini menggunakan file info.php. Dengan command berikut.
# nano /var/www/html/info.php
Kemudian masukkan script berikut.
# <?php 
phpinfo();
Save dan close filenya. Lalu coba akses: http://ip-vps/info.php.

Kalau sudah mengikuti tutorialnya dengan baik, harusnya berhasil instalasi LEMP ini.

Mungkin itu saja tutorial tentang Cara Instalasi LEMP (Linux, Nginx, MariaDB dan PHP) di CentOS 7.

Terimakasih telah berkunjung.

Cara Migrasi Website dari cPanel ke CentOS Web Panel (CWP)

MasRaka - CentOS Web Panel atau biasa disebut CWP ini memang sedang populer dikalangan sysadmin dan developer dalam memanage sebuah website tanpa ingin dikenakan biaya tambahan atau charge untuk sebuah license.

 

Berbeda dengan cPanel, cPanel membutuhkan license minimal berlangganan per-bulan. Kemudian, berbicara soal desain antara cPanel dan CWP ini memang berbeda juga. Saya sendiri lebih suka ke cPanel karena fiturnya banyak, tetapi hal ini tidak bisa dipungkiri. Karena CWP adalah OpenSource.

Nah, untuk artikel kali ini saya akan membahas tentang bagaimana caranya migrasi website dari cPanel ke CWP. 

Migrasi Website dari cPanel ke CWP


Pertama: Backup.
Anda perlu melakukan full backup melalui menu cPanel - Backup dengan pilihan "Download a Full Website Backup" yang berformat (tar.gz). Untuk backup destination pilih "Remote FTP Server" formatnya seperti berikut:

Untuk Remote Server, Remote User dan Remote Password sesuai dengan milik Anda. Kemudian klik Generate Backup utk memulai prosesnya.

Kedua: Rubah Nama File
Jika sudah selesai di backup, nama file biasanya akan menjadi backup-tanggal-masrakamig.tar.gz. Direname menjadi cpmove-masrakamig.tar.gz

Ketiga: Menu cPanel Migration
Login ke CWP Admin Anda, lalu ke menu User Accounts - cPanel Migration.
Account Import pilih file backup sesuai dengan usernamenya, Associate Package pilih sesuai paket yang ingin diterapkan pada akun tersebut. Password Account utk login ke CWP User. 

Kolom password temporarily ini password sementara untuk semua email accountsnya. Jangan lupa juga untuk ceklis option "This can make the process faster..." supaya cepat saat proses importnya. Setelah itu klik Import dan tunggu beberapa saat.




Ketiga: Migrasi selesai
Jika statusnya sudah ceklis berwarna hijau semua, dan ada notifikasi "Migration has been successfully completed" artinya proses migrasi sudah selesai.



Demikian penjelasan dan pembahasan mengenai migrasi website dari cPanel ke CWP. 
Semoga dapat membantu, jika ada pertanyaan silakan berkomentar.

Terimakasih.