Lengkap! Cara Menggunakan VPS untuk Hosting WordPress

Tolong siapkan waktu, karena tulisan ini sangat panjang. Mudah-mudahan bisa bermanfaat. Agar lebih mudah, saya akan tulis tutorial ini dalam format percakapan. Kita mulai yuk…

Jadi Ilmu Apa Yang Akan Saya Peroleh?

Saya akan berbagi materi tentang cara menggunakan VPS dengan benar sehingga bisa menginstall situs di VPS.

VPS yang saya maksud adalah Unmanaged, yang artinya kita harus men-setup setiap pekerjaan instalasi satu persatu.

Kok Unamanaged? Mengapa?

Simple: Agar lebih murah. Semua juga tau, kita, orang Indonesia, suka dengan harga murah tapi kualitas tidak murahan.

Kalo VPS-nya Managed, ngapain cape-cape baca tutorial ini, kita bisa langsung minta support untuk lakuin A..B..C..,dst.

Saya Sama Sekali Ngga Tau Mengenai VPS ini, Apa Boleh Saya Coba?

Boleh Sekali. Memang tulisan ini diperuntukan untuk teman-teman yang berencana menyimpan situs-nya di VPS namun tidak mengerti bagaimana caranya.

Saya tau, teman-teman yang sekarang baca tulisan saya ini tidak akan langsung praktek, tidak apa-apa, silahkan baca-baca dulu secara sekilas, kalau sudah yakin, buka kembali tulisan saya ini dan langsung praktek.

Kalau teman-teman mempraktekannya persis seperti arahan saya di tulisan ini, maka kemungkinan besar situs kita akan live dan bisa diakses dari seluruh dunia.

Sip, Kalo Gitu Saya Siap Menerima Materi

Bagus. Tapi jangan terlalu dipaksakan kalo sudah mentok, karena perlu keletian.

Baik. Alat dan Bahannya Apa?

Satu Buah domain, SSH Client (akan saya bahas di bawah) dan tentunya VPS. Untuk domain, saya punya domain nganggur bernama lisamayfield.com domain ini saya beli dari Namesilo karena harganya paling kompetitif dibanding Registrar lainnya.

Selanjutnya, kita juga butuh VPS-nya. Banyak kok tempat beli VPS. Ada Crissic, Ramnode, VPSDime, DigitalOcean, VULTR. Kalo mau yang lengkap dan murah bisa ke http://lowendbox.com

VPS Apa yang Bagus?

Saya tidak bisa menjawab, karena saya sekarang menggunakan Dedicated Server. Tapi untuk mengetahui rangking dan VPS yang bagus itu apa, bisa lihat hasil poling komunitas hosting seperti LowEndTalk. Silahkan pilih sesuai keinginan.

Maksud Saya, VPS Untuk Praktek Sekarang Apa?

Favorit saya, adalah Vultr dan DigitalOcean. Untuk tutorial kali ini, saya akan gunakan VPS dari Vultr, karena dengan harga yang sekelas, saya bisa mendapat performa yang lebih baik.

Hal itu terkait spek yang lebih dibandingkan DigitalOcean (Baca juga: Alasan saya memilih VPS dari Vultr daripada Digital Ocean). Selain itu provider tersebut memberikan kebebasan kepada kita untuk milih lokasi, juga kemudahan dalam hal tagihan pembayaran.

UPDATE:Vultr memberikan voucher $20. Lumayan buat trial dan belajar VPS. Sebelum expired, mending SEGERA DAFTAR SEKARANG.

OK Deh, Saya Juga Mau Coba Vultr

Bagus. Kalo mau coba VPS dari Vultr, silahkan daftar dulu.

Setelah berhasil daftar, login ke Client Area. Jika sudah masuk ke Client Area dan tambah saldo + masukan kupon, klik tombol “Deploy New Instance” seperti gambar di bawah ini:

Vultr Klien Area

Vultr Klien Area

Kita akan masuk ke Menu pemilihan Tipe server, Lokasi, OS dan Plan / Spek.

Untuk tipe Server, tergantung niche situs kita tentang apa. Kalau situs kita kebanyakan text, misalnya tulisan, tips/triks, maka saya pilih yang “Compute Instances” karena media penyimpanan datanya sudah menggunakan SSD.

SSD itu kalo dibayangin kaya FlashDisk berukuran besar, yang tidak memiliki piringan disk yang berputar (semacam DVD) jadi sudah pasti akan menambah kecepatan akses data dan performa.

Ukuran SSD dengan harga sewa termurah adalah 15 GB. Sangat cukup untuk tipe situs yang saya sebut di atas.

Namun, jika situs kita adalah situs berbasis gambar (situs wallpaper) yang jumlahnya berpuluh-puluh Giga Byte, saya rekomendasikan untuk memilih yang “Storage Instances” karena dengan harga yang sama akan mendapat ukuran penyimpanan data sebesar 125GB.

Pemilihan Tipe Server

Pemilihan Tipe Server

Selanjutnya adalah Lokasi…

Biasanya target pengunjung situs kita adalah orang US dan Eropa, maka saya pilih lokasi yang ada di US bagian Timur, yaitu Ney York / New Jersey.

Lokasi Server Vultr

Lokasi Server Vultr

Setelah Tipe Server dan Lokasi, saatnya kita milih OS. OS yang akan kita pilih adalah Linux. Ada dua pilihan, 32bit dan 64bit. Untuk RAM yang kurang dari 4GB, sebaiknya pilih yang ukuran 32bit.

Namun hal itu tidaklah wajib, maka untuk praktek ini saya pilih yang 64bit.

Sementara itu, ada banyak pilihan distro, ada CentOS, ada Ubuntu, ada juga Debian. Untuk praktek kali ini, saya pilih Debian karena website-website yang saya develop butuh beberapa aplikasi yang up-to-date.

Pada saat saya make CentOS, aplikasi yang saya butuhin msh belum versi terbaru jadi fitur yang saya butuhkan tidak ada di aplikasi tersebut.

Untuk menginstall aplikasi terbaru hrs install manual dan ini ribet karena butuh library dan aplikasi pendukung, contohnya digiKam.

Waktu itu saya pernah punya 500 ribu gambar di Harddisk saya, saya ingin menghapus gambar-gambar duplikat untuk mengehemat space.

Namun digiKam di CentOS masih versi jadul, fitur “scan duplikat gambar” blm ada. Kalo di Debian, update-an aplikasi2 yang saya butuhin ada dan dengan mudah dapat diinstall, misalnya digiKam, feh, ImageMagick, dll, dan saya ngga perlu nginstall manual.

Sebenernya, ada yang lebih friendly lagi: Ubuntu.

Tapi preferensi saya tetap ke Debian karena Ubuntu kan dibuatnya dari Debian 🙂 . Jadi kalau teman-teman di sini belum pernah nyoba Debian, silahkan coba, sekalian belajar ya.

Untuk versi Debian saya pilih versi terbaru yaitu Debian Jessie (versi 8).

Pilih 64 bit dan Debian 8 (jessie)

Pilih 64 bit dan Debian 8 (jessie)

Setelah ketiga poin di atas, kita akan pilih spek VPS yang akan kita sewa.

Saya serahkan ke teman-teman, namun untuk praktek trial and error, saya pilih spek yang paling buncit yang seharga $5 per bulan.

Spek Vultr

Spek Vultr

Setelah selesai, kita kasih nama server tsb dan klik tombol “Place Order“.

Untuk penamaan bebas, untuk VPS ini saya contohkan namanya adalah hardinal.

Klik Place Order

Klik Place Order

Dan tunggu sampe proses selesai.

Installing

Installing

Kalau selesai, kita akan mendapat email tentang informasi VPS tersebut. Kita juga bisa melihatnya melalui tombol “Manage

8-vps-berhasil-dibuat

Perlu dilihat bahwa, meskipun kita sudah mendapat informasi VPS lewat email, namun VPS ini masih dalam proses finishing.

Sebaiknya kita tunggu sampe proses tersebut selesai. Lihat tulisan pada gambar di bawah ini: Please note: Your sever…dst.

9-wait-sebentar

Kita juga bisa melihat sudah sejauh mana proses pembuatan VPS ini lewat “view the console

10-console-progress-vultr

Silahkan tunggu, dan kalau sudah selesai, notifikasi Please note tersebut akan hilang.

Lalu perhatikan gambar di berikut mengenai informasi VPS.

11-informasi-vps-vultr

Catat informasi yang ada, yaitu IP Address: 45.63.14.193 dan password: yhaewewo!5. Agar tidak lupa, simpan ke dalam Notepad, save dengan nama vps-vultr.txt.

12-rincian-vultr

Sekarang kita sudah berhasil pesan 1 buah VPS dari Vultr.

Selanjutnya VPS yang masih fresh tersebut akan kita install beberapa aplikasi.

Cara Install Aplikasi di VPS gimana?

Nanti saya jabarkan. Sebelum install aplikasi, kita harus bisa mengakses dan mengontrol VPS tersebut.

Diibaratkan VPS itu sebagai mainanan anak-anak. Tepatnya mobil-mobilan remote kontrol. Kita bisa kendalikan mobil-mobilan itu lewat remote kontrol.

VPS juga sama, VPS adalah komputer di belahan dunia lain, kita bisa kendalikan komputer tersebut dengan suatu alat bernama SSH dan SSH Klien.

Kalau kita analogikan dengan mobil-mobilan, SSH itu semacam frekuensi radio, dan SSH Klien itulah remote kontrolnya.

Baik Paham. Lalu?

Ada banyak jenis SSH Klien, kita akan gunakan SSH Klien yang gratis dan paling populer, yaitu PuTTY.

Cara Menggunakan PuTTY Gimana? Setting-nya?

Download dulu PuTTY dari halaman ini http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html. Cari yang putty.exe. Kalau sudah, buka aplikasi itu dan ikuti gambar di bawah ini.

13-putty

  1. Pilih Bagian Session
  2. Isi Hostname dengan IP Address yang kita dapat di email informasi VPS
  3. Klik Open, dan tunggu beberapa saat.

Nanti akan ada jendela pertanyaan seperti di bawah ini (Jawab dengan: Yes)

14-putty

Kita akan diminta memasukkan username. Kita isi dengan tulisan root dan akhiri dengan tombol Enter pada keyboard.

Selain itu, kita harus memasukan password ke PuTTY.

Berhubung password yang di-generate saat pembuatan VPS susah diingat, sebaiknya kita copy password tersebut (CTRL+C) lalu PASTE ke PuTTY.

Untuk memasukkan password ke PuTTY bukan dengan cara CTRL+V namun dengan tombol “Klik Kanan” pada Mouse sebanyak 1 kali. Saat kita memasukan password (PASTE password), di layar PuTTY TIDAK akan muncul apa-apa, seolah PuTTY tidak merespon / error.

Hal itu bukan error, atau ada yang rusak karena memang demikian. Jadi cukup klik kanan mouse sebanyak 1 kali, lalu teken tombol Enter.

Klik Kanan = PASTE

Klik Kanan = PASTE

Kalau sudah seperti ini artinya kita berhasil terhubung ke VPS.

16-putty

Untuk memudahkan di kemudain hari, kita harus mengganti password yang susah diingat tersebut. Kita harus memasukkan 1 perintah untuk mengganti password pada VPS ini.

Perintahnya adalah passwd silahkan ketik perintah itu dan akhiri dengan menekan tombol Enter di keyboard.

Seperti pada kejadian sebelumnya, saat kita memasukan / mengetik password, di layar PuTTY TIDAK akan muncul apa-apa.

Jjadi itu wajar dan menjadi salah satu fitur keamanan Linux. Tampilan penggantian password adalah seperti ini:

17-perintah-passwd

INGAT. Jika nanti kita masuk ke VPS ini, password nya sudah kita ganti, bukan yang dari Vultr lagi. Dan seperti biasa saat nanti kita memasukkan / mengetik password, tidak akan muncul karakter apa-apa di PuTTY.

Baik. Saya Ikutin dan Berhasil. Lalu sekarang install Software?

Belum. Belum ke sana. Kita akan belajar dulu mengedit suatu file di Linux menggunakan aplikasi bernama vi.

Edit File Di Linux? Maksudnya?

Di Windows, kita punya aplikasi bawaan bernama Notepad. Di Linux, juga ada bernama vi (hanya dua huruf).

Selain itu ada juga aplikasi lainnya, ada yang bernama nano, pico, dll.

Saat nanti kita install beberapa software / aplikasi agar VPS kita jalan, kita perlu mengedit / menyeting beberapa file konfigurasi atas aplikasi-aplikasi yang kita install.

Berhubung VPS ini kita akses dengan tampilan yang monoton dan tidak menarik, maka kita harus belajar cara edit file di Linux dengan aplikasi vi.

Lalu, Bagaimana Cara Menggunakan vi Editor?

Kalau kita menggunakan Notepad di Windows, cara ngedit file yaitu dengan membuka program Notepad, lalu ke Menu File --> Open --> Browse File Yang Akan Diedit.

Kalau di Linux tidak begitu, melainkan dengan menjalankan nama programnya diikuti dengan file yang akan di-edit.

Misalnya kita akan buka file bernama catatanku.txt menggunakan aplikasi vi, maka cara membukanya adalah dengan mengetik perintah nama_program file_yang_akan_diedit

Kalau pake program vi maka perintahnya vi catatanku.txt lalu diikuti tombol Enter.

Kalo pico maka pico catatanku.txt diikuti tombol Enter, dsb.

OK Paham. Lalu?

Seperti yang sudah saya sampaikan di atas, tampilan SSH itu sangat tidak menarik, polos dan monoton, untuk itu kita harus mengubahnya agar lebih gampang dicerna oleh otak kita.

Saya Ngga Ngerti. Otak? Maksudnya Salah Satu Lauk di Nasi Padang Untuk Kita Cerna?

Nah ini nih, kalo udah ngga fokus malah ke makanan. Kalo udah ngga fokus, mending berhenti dulu baca materinya rehat dulu agar teliti.

Ini tulisannya masih seperempatnya dan sisa tulisannya masih panjang.

Ngga Mau, Mau Lanjut Aja…

Ya sudah kalo begitu. Lanjut ya… Aplikasi favorit saya dalam edit file adalah vi, maka kita akan buat si vi ini lebih menarik.

Namun ada yang lebih bagus dari vi, namanya vim (tiga karakter) katanya sih kepanjangan dari vi improved. Kalau di-translate ke bahasa Indonesia dengan mengikuti kaidah Ejaan Yang Disempurnakan, vi improved itu artinya vi yang dibagusin 🙂 .

Kita akan upgrade dulu si vi ini menjadi vim. Meskpin kita upgrade jadi vim, tetep saja perintah-perintahnya sama persis dengan vi.

Caranya, copy perintah ini: apt-get install vim -y lalu paste ke PuTTY (INGAT, PASTE menggunakan tombol klik kanan mouse)

18-install-vim

Informasi:

Perintah apt-get install vim -y itu kalo di-translate ke bahasa Indonesia dengan mengikuti kaidah Ejaan Yang Disempurnakan, artinya

  1. apt-get install = tolong install
  2. vim = vim
  3. -y = ya!

Jadi apt-get install vim -y = tolong install vim ya!

Nanti kalau sudah selesai install, layar PuTTY akan berakhir dengan tanda pagar “#” dan akan stagnan tidak totorolongan kahandap (bahasa planet ngga bisa diartiin).

Selanjutnya upgrade vi ke vim dengan perintah berikut: rm -f /usr/bin/vi; ln -s /usr/bin/vim /usr/bin/vi lalu Enter.

Untuk perintah upgrade ini, tidak akan saya jelaskan secara detail, ikuti aja! Tampilannya adalah seperti berikut:

19-ganti-vi-jadi-vim

Selesai di-upgrade, baru kita lakukan penataan pada vi.

Tadi Sudah Di-Upgrdae Sekarang Ditata?

Betul. Perhatikan gambar di bawah ini.

20-line-numbering

Gambar di atas adalah isi dari sebuah file HTML.

Yang sebelah kiri dibuka dengan program Notepad, yang sebelah kanan dibukan dengan EditPad. Coba bandingkan, mudah mana untuk baca file tsb?

Sama Aja, Tidak Ada Beda

Kalo teliti, pasti bakal lebih mudah buka file itu pake EditPad, karena sudah ada nomor baris dan pewarnaan.

Oh Betul-Betul

Text editor di Linux yang akan kita gunakan adalah vi.

Namun secara default, saat kita edit file dengan aplikasi ini, kita tidak bisa melihat nomor baris dan pewarnaan kode. Jadinya monoton dan tidak menarik.

Untuk lebih membuatnya menjadi eye friendly, kita akan membutuhkan suatu file konfigurasi untuk si viini.

Yaitu dengan cara membuat file bernama .vimrc.

.vimrc? File Apa Itu?

.vimrc adalah file konfigurasi untuk editor vi. Di depan file itu ada tanda titik .. yang berfungsi untuk meng-hidden file tsb.

Kalo kita sudah terbiasa dengan cPanel dan WordPress, seringkali kita menemukan file bernama .htaccess . Lihat ada tanda titik . di file .htaccess. File .vimrc harus diletakan di root folder.

Cara Buat File .vimrc Gimana?

Jalankan perintah vi .vimrc di PuTTY

21-membuat-vimrc

Maka kita akan melihat tampilan berikut:

22-vimrc

Kita ketik 2 kode konfigurasi, yaitu set number untuk menambahkan nomor baris dan syntax on untuk pewarnaan kode.

Saya Tidak Bisa Ketik Apapun Di vi?

Betul memang begitu, kita tidak bisa meng-input karakter apapun sekarang karena kita ada dalam posisi “read”.

vi ini agak unik, sebelum kita ketik/edit suatu file, kita harus masuk dulu ke mode edit dengan cara menekan tombol i pada keyboard komputer.

Jika kita berhasil masuk ke mode edit, maka ada perubahan di layar vi, yaitu ada tanda --INSERT-- seperti ini.

Tekan tombol / huruf "i" di keyboard agar masuk ke mode edit

Tekan tombol / huruf “i” di keyboard agar masuk ke mode edit

Setelah itu ketik 2 kode di atas, yaitu set number dan syntax on

24-kode-di-vi

Setelah selesai, kita save file tersebut.

Cara Save File Di vi Gimana?

Kita harus keluar dulu dari mode edit sampai kode --INSERT-- hilang.

Tadi kan disampaikan, cara masuk mode edit dengan menekan tombol i di keyboard, untuk cara keluarnya yaitu dengan menekan tombol Esc di ujung kiri atas keyboard.

Sehingga nanti kita kembali ke mode read.

25-read-mode-vi

Setelah dipastikan kita ada di mode read, maka tinggal save.

Di Notepad, perintah save adalah dengan kombinasi CTRL+S kalo di vi ada dua cara:

  1. Kombinasi Tombol SHIFT+ZZ. Tombol SHIFT tekan, tahan, lalu ikuti dengan menekan tombol Z sebanyak dua kali berturut-turut, setelah itu baru tombol SHIFT dilepas.
  2. Dengan perintah :wq diikuti dengan tombol Enter:

Untuk tutorial ini, kita pake cara nomor 2, kalau sudah lancar silahkan gunakan cara nomor 1.

26-cara-save-pake-vi

Kalo sudah di save, kita akan kembali ke layar awal, sebelum masuk vi.

27-save-vi-editor

Apa Langkah Sampai Sini Sudah Betul?

Untuk menguji apakah kita berhasil membuat tampilan vi lebih eye friendly dan tidak monoton, mari kita buka file tersebut.

Perintahnya adalah vi .vimrc dan lihat hasilnya, harusnya nanti seperti ini, berwarna dan ada nomor baris.

28-vi-editor-edited

Silahkan keluar dari vi dengan perintah save yang sudah saya jelaskan di atas (kode :wq).

Selanjutnya kita akan mulai ke hidangan utama yaitu instalasi aplikasi-aplikasi utama.

Update System

Sebelum kita install WebServer, PHP, dll, kita harus update system dan menambahkan beberapa kode konfigurasi system.

Namun saya mau cerita sedikit tentang struktur file di Linux itu seperti apa.

Begini…

Saat kita membuka Windows dan akan membuka suatu file, maka kita gunakan Windows Explorer. Saya menggunakan Windows 7, maka tampilan Windows Expolrer untuk Windows 7 adalah seperti ini.

29-tampilan-windows-explorer-di-windows7

Lalu saat saya ingin membuaka Drive C, maka tampil seperti ini:

30-drive-c-windows7

Kalo di Linux tidak seperti itu…

Di Linux itu layarnya kan hitam polos, dan ngga ada Windows Explorer. Di Linux juga tidak ada Drive-Drive-an seperti C, D, E yang ada hanya “Computer”-nya Linux.

Itu pun tidak dalam bentuk icon computer, tapi lebih simpel karena ditulis dengan tanda garis miring seperti ini /.

Di komputer Windows, lokasi file bermacam-macam. Misalnya:

  1. Saya download gambar kucing dan saya save di folder Downloads seperti ini: C:\Users\username\Downloads\kucing.jpg.
  2. Saya punya file mp3 yang saya simpen di folder Lagu di Drive D, maka alamatnya adalah D:\Lagu\lagu.mp3.
  3. Saya install Microsoft Office, maka alamat / folder instalasinya ada di C:\Program Files\Microsoft Office.

Kalau di Linux, tidak ada drive C, D, E, dst.., yang ada hanya “Computer” yang dilambangkan dengan tanda garis miring / .

Selain itu, tingkatan folder terbalik dengan Windows, kalau di Windows garis miring-nya ke kanan \, kalau di Linux, ke kiri /.

Misalnya saya ingin mendownload gambar kucing menggunakan Linux. Kalau di Windows, file kucing.jpg kita simpan di C:\Users\username\Downloads\kucing.jpg maka di Linux kita simpan di Computer –> Home –> Username –> Pictures –> kucing.jpg atau kalo dipanjangkan alamat lengkapnya menjadi /home/username/Pictures/kucing.jpg

Saya Bingung dengan Penjelasan di Atas Tentang Struktur File Linux

Tidak apa-apa. Saya hanya ingin menjelaskan bahwa ada sedikit perbedaan struktur lokasi file antara Windows dengan Linux.

Mudah-mudahan ada sedikit gambaran.

Setelah kita tahu struktur file, kita akan edit suatu file agar Linux Debian, bisa meng-update systemnya saat kita install aplikasi-aplikasi utama. File tersebut bernama sources.list yang terletak di Folder /etc/apt/.

Sekarang jalankan perintah vi /etc/apt/sources.list diakhiri dengan tombol Enter untuk mulai pengeditan.

31-sources-list

Lalu tambahkan 2 kode berikut di baris paling akhir:

deb http://packages.dotdeb.org jessie all
deb-src http://packages.dotdeb.org jessie all

Seperti ini (silahkan ingat kembali cara edit dan save file menggunakan vi):

32-sources-list

Save kalo sudah. Lalu jalankan perintah wget https://www.dotdeb.org/dotdeb.gpg diikuti dengan apt-key add dotdeb.gpg

33-dotdeb

Setelah selesai, kita akan update Debian dengan perintah apt-get update dan tunggu proses hingga selesai.

34-update-debian

Sekarang kita mulai masuk ke penginstallan software / aplikasi untuk kebutuhan situs kita.

Saya asumsikan teman-teman di sini pengguna WordPress, jadi kita akan install software standar…

Diantaranya Nginx sebagai Webserver, PHP5-FPM untuk pengolahan file PHP dan MariaDB untuk penyimpanan database.

Kita akan gunakan Nginx, karena lebih bagus dan lebih ringan dari WebServer lain semacam Apache.

Kita juga memakai MariaDB karena lebih advantages, tentang Apa itu MariaDB dan mengapa saya gunakan pernah saya bahas di sini.

Selanjutnya kita menggunakan PHP-FPM yang merupakan pasangan terbaik untuk Nginx. Setelah install suatu program, kita akan konfigurasi beberapa file supaya program bekerja dengan baik.

Lalu, Bagaimana Cara Install Nginx dan Konfigurasinya?

Sangat mudah. Silahkan jalankan perintah ini apt-get install nginx -y diakhiri dengan tombol Enter, tunggu hingga proses selesai.

35-install-nginx

Setelah selesai, kita edit file konfigurasi Nginx. File ini bernama nginx.conf dan ada di direktori /etc/nginx/ sehingga perintah untuk edit file ini adalah vi /etc/nginx/nginx.conf diikuti dengan tombol Enter.

36-nginx-conf

Nanti kita akan dihadapkan dengan tampilan berikut:

37-nginx-conf

Masuk ke mode edit, dan tempatkan kursor ke baris nomor 15. Di sini, kita sisipkan kode client_max_body_size 100m; (AWAS, tanda titik koma jangan ketinggalan). Kode tersebut saya gunakan untuk mencegah error saat saya upload file besar.

38-nginx-conf

Keluar dari mode edit lalu save. Selanjutnya, kita install PHP yang bernama PHP5-FPM

Cara Install PHP5, emang Gimana?

Mudah kok, tinggal jalankan apt-get install php5-fpm.

Namun karena kita akan install WordPress, maka kita perlu install juga teman-temannya PHP, misalnya PHP-GD untuk gambar, PHP MySQL untuk ngolah Database, dan lain-lain.

Sehingga perintah di atas belum cukup, yang betul adalah:

apt-get install php5-fpm php5-mysqlnd php5-gd php5-curl php5-cli -y

39-install-php5

Tunggu proses hingga selesai. Kalau sudah, kita akan atur file konfigurasinya. File tersebut bernama
php.ini yang berlokasi di folder /etc/php5/fpm/. Perintahnya adalah vi /etc/php5/fpm/php.ini.

40-konfig-php

Nanti kita akan melihat tampilan berikut:

41-edit-php

Kita akan mencari tulisan kode cgi.fix_pathinfo=1 dan menggantinya menjadi cgi.fix_pathinfo=0.

Ada trik dalam mencari text menggunakan vi. Jika di Windows, kita biasa mencari tulisan menggunakan kombinasi tombol CTRL+F, kalau di vi mencari tulisan itu dengan tombol garis miring /.

Jadi, untuk mencari tulisan cgi.fix_pathinfo=1 tinggal kita tekan tombol garis miring / diikuti dengan cgi.fix_pathinfo=1 dan diakhiri dengan tombol Enter.

42-find-text-in-vi

Maka kita akan meloncat ke tulisan yang kita cari. Terlihat pada gambar di bawah, tulisan tersebut ada di baris nomor 773.

43-mencari-tulisan-di-vi

Seiring berjalannya waktu, mungkin baris nomor kode tsb berbeda di kemudian hari (bukan 773 lagi), meskipun berbeda, tidak apa-apa, yang penting tulisan itu yang kita maksud.

Selanjutnya, masuk ke mode edit, lalu hapus tanda titik koma ; dan ganti angka 1 menjadi angka 0.

Setelah itu, keluar dari mode edit. Sehingga tampilan seperti ini:

44-edit-php-ini

Sekarang kita juga akan mencari tulisan yang lain, yaitu upload_max_filesize.

Kode ini berhubungan saat kita upload file, misal gambar, kita ubah angkanya misalnya mejadi maksimum 50MB.

Seperti biasa, untuk mencari tulisan, kita tekan tombol /diikuti tulisan yang kita cari. Dalam hal ini, perintahnya adalah /upload_max_filesize diakhiri dengan tombol Enter.

45-find-upload-limit-php

Setelah ketemu, ganti angka 2M yang ada di kanan “sama dengan” (=) menjadi 50M. Seperti biasa, masuk mode edit, lakukan perubahan, keluar dari mode edit.

Sebelum:

46-php-limit-size

Sesudah:

47-php-limit-size

Kalau sudah, save perubahan yang kita lakukan dengan perintah :wq.

Artinya, kita sudah berhasil menginstall dan mengatur PHP. Selanjutnya adalah instalasi MariaDB.

Baik. Saya Siap Simak Cara Instalasi MariaDB

Tidak berbeda jauh dengan instalasi Nginx dan PHP, instalasi MariaDB pun sangat mudah.

Pada saat nanti proses instalasi, kita akan diminta membuat password untuk MariaDB.

Masih ingat file Notepad yang berisi detail VPS? Coba buka kembali file itu dan tambahkan informasi username & password MariaDB.

Untuk saya, saya contohkan password-nya adalah 123456. Silahkan teman-teman buat password MariaDB yang kompleks, sesuai keinginan, dan mudah diingat. Untuk username sudah pasti bernama root.

Ini catatan Notepad saya setelah ada update informasi:

48-update-notepad

Mari mulai proses instalasi, silahkan jalankan perintah ini satu-persatu.

apt-get install python-software-properties -y

Ket: Di saya, aplikasi ini sudah terinstall, tapi tidak apa-apa, kita reinstall aja.

Ket: Di saya, aplikasi ini sudah terinstall, tapi tidak apa-apa, kita reinstall aja.

apt-get install software-properties-common -y

50-install-mariadb

apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db

51-install-mariadb

add-apt-repository 'deb http://nyc2.mirrors.digitalocean.com/mariadb/repo/10.0/debian jessie main'

52-install-mariadb

apt-get update && apt-get install mariadb-server -y

53-install-mariadb

Masukkan password untuk username root yang sudah kita siapkan sebelumnya. Akhiri dengan tombol Enter untuk konfirmasi.

54-passord-mariadb

Juga akan diminta pengulangan password untuk konfirmasi. Lanjutkan sampai proses instalasi MariaDB selesai.

Kalau sudah selesai, berarti lengkap sudah komponen-komponen agar VPS ini bisa menampung website kita.

Agar lebih afdol, kita restart semua service yang kita install dengan perintah berikut:

service nginx restart; service php5-fpm restart; service mysql restart

55-restart-all-services

Langkah selanjutnya kita akan uji coba apakah VPS kita bisa diakses oleh browser. Silahkan akses IP Address VPS kita, kalau punya saya bekerja dengan baik seperti ini.

56-working-nginx-on-debian

Berarti Sudah Selesai?

Belum selesai, ini baru 50%-nya, masih ada beberapa tahapan yang harus diselesaikan. Tapi tidak akan terlalu rumit seperti di atas.

Tahapan selanjutnya adalah instalasi WordPress pada domain yang akan kita simpan di VPS ini.

Kalau teman-teman mulai jenuh dengan tulisan saya, mending istirahat dulu dan kembali lagi nanti karena materinya masih cukup panjang. Kalau mau lanjut ya silahkan.

Sebelum saya lanjutkan, saya mau cerita tentang bagaimana sebuah situs bekerja dan bisa diakses oleh seseorang.

Menarik. Jadi Bagaimana Cara Kerja Situs Itu?

Misal terdapat 5 orang yang kita umpamakan. Adi = Pengguna Internet, GunGun = Google, Ibu Nani = Namesilo (registrar), Danang Noor Syarif = DNS Server, dan terakhir Enjie = Nginx.

Orang pertama namanya Adi.

Si Adi ini hobinya internetan, Facebookan, Twitteran, dll. Pokoknya dia ngga bisa lepas dari Internet. Sebagai orang yang selalu nempel dengan internet, si Adi menggunakan jasa Mesin Pencari Google untuk mencari sesuatu yang dia inginkan.

Adi sangat suka makan. Semua makanan dia jajal dan dia kumpulkan informasi tentang makanan tersebut.

Hari ini, Adi ingin makanan terbaru. Sudah tentu, si Adi pun datang ke rumah GunGun (GunGun = Google), ngopi-ngopi, ngobrol ngaler ngidul trus akhirnya nanya rekomendasi apa menu makanan hari ini.

Si GunGun lalu nujukin kamera HP nya, di bagian galeri (Google Images) dia nunjukin beberapa foto buku resep makanan (BUKU = SITUS = DOMAIN) yang dia terima dari sales yang coba jual buku (dari webmaster / pemilik situs yang submit ke Google).

Tapi si GunGun ngga punya buku tersebut secara utuh, dia hanya simpan sedikit informasi tentang buku-buku tersebut.

Si Adi, tertarik dengan foto sampul buku lisamayfield.com yang berisi resep-resep makanan enak.

Si Gugum pun ngasih tau Adi, bahwa buku itu pernah diajukan oleh seseorang sales.

Buku itu diterbitkan oleh penerbit yang dikomandoi Ibu Nani (Namesilo).

Penasaran dengan resep yang ada di buku lisamayfield.com, akhirnya si Adi pergi ke penerbit tsb. Sesampainya di penerbit, terjadilah percakapan dengan pemilik penerbit itu (Ibu Nani)

Adi: “Selamat siang Ibu Nani, saya tadi main ke rumah GunGun, katanya Ibu Nani adalah penerbit buku lisamayfield.com?”

Ibu Nani: “Sebentar saya cek di komputer saya.”

Adi: “Komputernya bagus Bu, merk apa?”

Ibu Nani: “Ini komputer saya merk-nya Verisign, dia yang mengolah data buku berakhiran .com

Setelah dicek di komputer ber-merk Verisign, Ibu Nani pun bilang…

Ibu Nani: “Oh buku itu, iya betul mas Adi, setelah kita cek di komputer bermerk Verisign, hasilnya menunjukan bahwa kita memang penerbit buku tersebut. Tapi yang tau detail buku itu di mana, silahkan Mas Adi ke ruangan Pak Danang Noor Syarif (DNS) yang mengetahui rincian buku tersebut. Mas Adi dari sini naik tangga, di lantai 2 ada ruangannya Pak Danang”

Adi: “Nama ruangannya apa, Bu?”

Ibu Nani: “ns1.example.com dan ns2.example.com.”

Setelah sampai di ruangan Pak DNS…

Adi: “Permisi Pak, Tadi saya dari ruangan Ibu Nani, saya sedang mencari buku lisamayfield.com. Kata Ibu Nani, Bapak tau rincian detail buku tersebut?”

DNS: “Oh buku itu. Ada, saya simpan di rak yang deket jendela, itu ada banyak merk rak, ada merk Ramnode, ada merk Vultr, ada merk DigitalOcean, dll. Khusus untuk buku tsb, adanya di merk Vultr, Mas Adi silahkan kesana aja, di sana ada petugasnya kok!”

Si Adi lalu menuju rak Vultr berharap buku lisamayfield.com dapat ia dapatkan.

Dia harus melewati suatu lorong agar sampai di rak yang ia tuju. Lorong yang ia lalui dinamakan “A Records“. Lantai lorong A Records terbuat dari keramik unik.

Keramik ini unik karena menggunakan susunan / formasi (45.63.14.193, ini adalah IP Address VPS).

Saat ini Adi tepat di depan rak merk Vultr. Namun dia bingung, karena banyak sekali buku-buka di rak tersebut.

Tak perlu menunggu waktu lama, ada petugas datang menghampiri, petugas yang diceritakan Pak Danang.

Enjie: “Selamat datang di rak Vultr, saya Enjie. Saya petugas di sini. Orang manggil saya Web Server Nginx. Ada yang bisa saya bantu?”

Adi: “Halo Mas, tadi saya dari ruangan Pak Danang, saya sedang cari buku resep masakan. Itu ada di buku berjudul lisamayfield.com

Enjie: “Baik, tunggu sebentar, saya cek dulu di “catatan kecil” saya. Saya mau cek apa benar buku itu terdaftar di “catatan kecil” saya.”

Adi: “Silahkan.”

Setelah menunggu beberapa saat…

Enjie: “Mas Adi, setelah saya cek, ternyata benar, buku itu ada di rak Vultr, lokasi tepatnya sih di urutan kedua dari kiri. Dengan senang hati akan saya bantu ambilkan.”

Adi: “Wah, jadi ngerepotin… 😛 ”

Enjie: “Mas, ini buku lisamayfield.com yang mas cari. Silahkan kalau mau lihat.”

Adi: “Persis. Ini adalah buku yang GunGun ceritakan ke saya.”

Akhirnya Adi bisa membaca rekomendasi makanan untuk hari ini.

Kira-kira seperti itulah materi yang sedang kita praktekan sekarang.

Mudah-mudahan bisa memberi gambaran bagaimana suatu situs bekerja dan informasi yang ada di situs, bisa sampai ke pengguna internet.

Oh iya, jika ada yang bertanya-tanya, emang ada komputer merk Verisign, itu hanya perumpamaan aja.

Verisign itu adalah pengelola semua domain berakhiran .com dan .net, jadi kalo kita beli domain berakhiran .com di Namecheap, ujung-ujungnya di proses Verisign (CMIIW).

Keren Ceritanya, Tapi Saya Ngga Ngerti

cape deh

Kita akan lanjutkan dengan materi mengenai Virtual Host / Server Block Nginx.

Server Block Nginx? Apaan Tuh?

Baca kembali cerita di atas tentang “catatan kecil” si Enjie.

Server block itu kalo diumpamain semacam “catatan kecil” nya si Enjie.

Server Block adalah suatu file yang menyimpan informasi mengenai konfigurasi suatu domain. Konfigurasi yang dimaksud yang paling utama diantaranya adalah nama domain dan lokasi folder tempat domain disimpan.

Ingat diperumpamaan di atas, si Enjie cari buku lisamayfield.com lalu menentukan buku itu ada “di urutan kedua dari kiri” karena si Enjie melihat isi catatannya. Ini juga berlaku untuk Nginx.

Di dalam Server Block terdapat info mengenai nama domain.

Info mengenai domain didefinisikan dengan kode server_name, lalu untuk lokasi file tempat domain didefinisikan dengan kode root.

Bagaimana Konfigurasi Server Block Nginx?

Dalam proses instalasi Nginx, terdapat file contoh yang bisa kita gunakan.

File contoh ini bisa kita copy paste untuk domain yang akan kita simpan di VPS. File contoh Server Block Nginx bernama default yang berada di folder /etc/nginx/sites-available/.

Kita akan copy paste file contoh ini untuk domain lisamayfield.com. Agar lebih mudah, kita akan me-copy-nya dengan akhiran .block.

Silahkan jalankan perintah ini untuk meng-copy-nya:

cp /etc/nginx/sites-available/default /etc/nginx/sites-available/lisamayfield.com.block

57-cp-server-block

Setelah kita copy, edit dengan perintah:

vi /etc/nginx/sites-available/lisamayfield.com.block

58-edit-server-block-nginx

Berikut ini adalah tampilan Server Block hasil copy-paste. Kita harus sesuaikan isinya.

59-isi-server-block

Kita akan hapus semua tulisan yang berwana biru. Tulisan yang berwana biru, tidak dianggap oleh Nginx.

Jika diperhatikan, yang berwarna biru itu diawali dengan karakter tanda pagar #. Seperti tampilan di atas, baris 1 s.d 15 berwarna biru, maka kita hapus biar susunan kode terlihat lebih ramping.

Untuk menghapus baris menggunakan vi, perintahnya adalah :BARIS_AWAL,BARIS_AKHIRd diakhiri dengan tombol Enter.

Sehingga untuk menghapus baris nomor 1 s.d 15 perintahnya adalah :1,15d. Silahkan langsung ketik perintah tersebut, TANPA harus masuk ke mode edit terlebih dahulu.

60-hapus-baris-pake-vi

Hasil penghapusan baris 1 s.d 15, adalah seperti ini.

61-hasil-hapus-baris

Kembali, kita akan hapus kode berwana biru.

Pada tampilan di atas adalah baris 5 s.d. 19. Namun, nanti akan ada 2 blank line, maka saya akan hapus dari 4 s.d 19, perintahnya adalah :4,19d

62-hapus-baris-lagi

Silahkan lakukan untuk baris kode yang lain menggunakan kode perintah penghapusan baris di atas.

Jika mengalami kesulitan / bingung, pake cara manual aja menggunakan tombol DELETE namun kita harus masuk ke mode edit dulu jika ingin menggunakan cara tersebut.

Setelah semua baris kode berwana biru terhapus, tampilan Server Block Nginx saya adalah seperti ini.

63-tersisa-15-baris

Terlihat bahwa yang tersisa hanya 15 baris.

Selanjutnya kita akan sesuaikan dengan domain kita lisamayfield.com.

Untuk itu, masuk ke mode edit.

Pertama, lihat baris no 2, kita harus hapus tulisan default_server. Kita juga harus hapus semua kode di baris nomor 3. sehingga menjadi seperti ini.

64-listen-directive-nginx

Sekarang, kita akan memberitahukan Nginx tempat lokasi situs kita berada.

Pemberitahuan ini didefinisikan oleh kode root. Situs kita akan kita simpan dalam folder bernama lisamayfield.com.

Nanti, folder situs kita tsb akan kita buat di folder /var/www/html/.

Pembuatan folder tersebut akan saya bahas di bawah.

Selain itu, karena situs kita berbasis WordPress, maka kita tambahkan kode index.php pada baris nomor 6. Perubahan ini dapat dilihat pada gambar berikut:

65-root-index

Selanjutnya kita akan beritahu Nginx nama domain situs kita.

Dalam praktek sekarang, domain yang akan kita simpan adalah lisamayfield.com. Simpan nama domain tersebut pada baris nomor 8 dengan menghapus underscore _ di bagian kanan.

Lihat baris nomor 11, Kita akan mengganti kode =404 dengan kode /index.php?$args. Kalau bingung, lihat gambar di bawah:

66-server-name-404

Terakhir, kita akan tambahkan kode di baris nomor 13.

Kode ini digunakan untuk pemrosesan file PHP. Silahkan copy kode di bawah, kembali ke PuTTY, tempatkan kursor di baris nomor 13, lalu paste dengan cara klik kanan. Kodenya adalah:

location ~ \.php$ {
	fastcgi_split_path_info ^(.+\.php)(/.+)$;
	fastcgi_pass unix:/var/run/php5-fpm.sock;
	fastcgi_index index.php;
	fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
	include fastcgi_params;
}

Sehingga menjadi seperti ini (lihat yang di highlight):

67-php-part

Agar lebih rapih, kita tambahkan baris 13 dengan sebuah blank line.

Sehingga secara keseluruhan, kode Server Block nya adalah seperti ini.

68-correct-server-block-nginx

Kalo ditulis, contoh Server Block Nginx yang benar ditulis seperti ini.

server {
         listen 80;

         root /var/www/html/lisamayfield.com;

         index index.php index.html index.htm;

         server_name lisamayfield.com;

         location / {
                 try_files $uri $uri/ /index.php?$args;
         }

         location ~ \.php$ {
                 fastcgi_split_path_info ^(.+\.php)(/.+)$;
                 fastcgi_pass unix:/var/run/php5-fpm.sock;
                 fastcgi_index index.php;
                 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                 include fastcgi_params;
         }

 }

Kalau semua sudah selesai, silahkan Save perubahan tersebut dengan keluar dari mode edit (Esc) dan akhiri dengan perintah :wq diikuti tombol Enter.

Server block yang baru kita edit, belum kita aktifkan, untuk mengaktifkannya, jalankan perintah di bawah (sesuaikan nama domain-nya):

ln -s /etc/nginx/sites-available/lisamayfield.com.block /etc/nginx/sites-enabled/

69-symlink-example

Kita akhiri dengan me-reload konfigurasi dengan perintah service nginx reload

70-service-nginx-reload

Tadi di atas, kita sudah tentukan bahwa lokasi folder tempat folder kita berada adalah /var/www/html/lisamayfield.com.

Folder ini belum kita buat…

Untuk itu kita harus membuatnya dengan perintah mkdir -p /var/www/html/lisamayfield.com

71-mkdir-folder

Web masih belum aktif karena folder masih kosong.

Langkah selanjutnya kita akan buat database untuk situs kita.

Bagaimana Cara Buat Database di VPS?

Sebelum dilanjutkan, kita buka kembali file Notepad yang berisi rincian VPS.

Kita akan tambahkan rincian baru untuk situs WordPress kita, yaitu MySQL Database. Kalau saya, adalah seperti ini:

Rincian MySQL untuk situs lisamayfield.com

  1. username: u_lisa
  2. database: db_lisa
  3. password: db-pass
  4. email: me@lisamayfield.com

Silahkan buat rincian di atas, sesuai kehendak teman-teman.

Sehingga, catatan Notepad saya sekarang berubah seperti ini (email saya lupa, tidak saya sertakan di gambar bawah):

72-notepad-updated

Sebentar… mungpung belum terlalu jauh, saya mau dongeng tentang Database.

Misalnya kita ibaratkan ada sebuah lahan kosong yang tidak terpakai.

Lahan ini dimiliki oleh Ibu Maria Dibyo Badriah ato lebih dikenal dengan Ibu MariaDB. Dia mempunyai anak bernama Lisa.

Dia lalu berencana membuat suatu toko kelontong di lahan tersebut, nanti nama tokonya mau ia kasih nama “Toko Kelontong db_lisa”.

Tokonya akan diisi dengan barang-barang sembako untuk kebutuhan tetangga sekitar toko.

Dari dongeng di atas dapat kita analogikan sebagai berikut:

  1. MariaDB = Aplikasi Database
  2. Toko Kelontong db_lisa = Nama Database
  3. Barang Sembako = Isi situs (gambar, artikel, dll)

Mudah-mudahan mengerti tentang apa itu kegunaan MariaDB, database, dan WordPress.

MariaDB kan udah diinstall. Sekarang, kita buat “toko”-nya dalam hal praktek ini, database-nya yang bernama db_lisa. Caranya jalankan perintah berikut: mysql -u root -p diikuti tombol Enter. Nanti akan diminta password.

73-mysql-u-root-p

Masukkan password root mysql yang sudah kita buat sebelumnya (kalau lupa lihat Notepad!). Kalau punya saya password-nya: 123456

Selanjutnya, masukkan perintah ini satu-persatu diikuti tombol Enter. Sesuaikan detail di bawah dengan rincian yang ada di Notepad.

CREATE DATABASE db_lisa;
CREATE USER 'u_lisa'@'localhost' IDENTIFIED BY 'db-pass';
GRANT ALL PRIVILEGES ON db_lisa.* TO 'u_lisa'@'localhost';
flush privileges;
quit;

Tampilannya seperti berikut:

74-create-database-wordpress-mysql-command

Sampai di sini, kita berhasil membuat Database untuk situs kita.

Selanjutnya kita akan install WordPress di situs kita. Install WordPress akan kita lakukan manual melalui perintah-perintah Linux lewat SSH.

Jadi, Bagaimana Cara Install WordPress melalui SSH? (Linux Command)

Tidak ada yang sulit jika teman-teman mengikuti tutorial ini dengan teliti dan baik.

Mari kita lanjutkan…

Langkah awal untuk menginstall WordPress, yaitu kita harus men-download installer WordPress dulu.

Jalankan perintah berikut untuk men-download-nya:

wget http://wordpress.org/latest.tar.gz

75-wget-lates-tar-gz-wordpress

Perintah di atas, akan men-download file bernama latest.tar.gz. Kita harus mengekstrak file tersebut dengan perintah tar -xf latest.tar.gz.

Hasil dari ekstrak file tersebut adalah sebuah folder bernama wordpress. Untuk meyakinkan, kita cek dengan perintah ls

76-tar-ls

Perhatikan gambar di atas pada folder wordpress. Di dalam folder itu, terdapat file-file WordPress semisal wp-config.php, wp-content, wp-admin, dll.

Kita harus pindahkan (kalau di Windows CUT-PASTE) semua isi yang ada di folder tersebut, ke folder di mana kita menyimpan situs kita.

Coba ingat kembali!

Pada materi Server Block Nginx, kita memberi tahu Nginx bahwa lokasi situs lisamayfield.com berada di folder /var/www/html/lisamayfield.com.

Untuk itu, kita akan pindahkan (CUT) isi dari folder wordpress ke folder itu. Perintahnya adalah mv wordpress/* /var/www/html/lisamayfield.com/ diikuti tombol Enter.

77-mv-wordpress-var-www-html

Dengan begitu, kita siap untuk menginstall WordPress di domain lisamayfield.com. Namun perhatikan langkah krusial di bawah.

Penting-kah?

Sangat Penting! Setelah kita siap untuk install WordPress, kita harus memberi kekuatan si Enjie (Nginx) agar dia bisa leluasa keluar masuk folder situs kita.

Seperti yang saya jelaskan di atas, folder situs kita adalah /var/www/html/lisamayfield.com. Folder tersebut dibuat oleh kita (root), yang menginstall Nginx (root = pemilik kekuatan penuh VPS).

Karena kita yang “menciptakan” Nginx terpasang di VPS ini, si Nginx ngga berani dan ngga akan bisa keluar masuk folder situs kita dengan bebas. Maka untuk itu, kita harus memberi hak akses Nginx dengan perintah berikut:

chown -R www-data:www-data /var/www/html/lisamayfield.com

78-chown-command

Lengkap sudah sesi installasi software-software dan konfigurasinya. Kita akan masuk ke menu utama yaitu membuat situs bisa diakses.

Bagaimana Cara Membuat Situs Live di VPS?

Sekarang tidak ada hubungan dengan SSH Client lagi (PuTTY).

Sekarang kita berhubungan dengan Registrar domain (GoDaddy, Namecheap, Name.com, 1And1, Namesilo, dll).

Saya mendaftar domain lisamayfield.com di Namesilo, kalau teman-teman pun menggunakan domain dari namesilo pada praktek ini, login-lah ke Namesilo.

Lalu ikuti panduan berikut:

Masuk ke Namesilo, dan masuk ke bagian Domain Console dari domain yang akan dihosting.

Lalu pada bagian Name Servers, pastikan menggunakan Name Servers default bawaan Namesilo, yaitu: ns1.dnsowl.com, ns2.dnsowl.com, dan ns3.dnsowl.com.

79-domain-console-namesilo

Selanjutnya, klik pada Icon bola dunia untuk mengubah DNS Records.

80-dns-records-namesilo

Secara default, isinya adalah seperti ini.

81-dns-records-namesilo

Kita harus menghapus baris kedua dan ketiga. Hapus dengan tombol “X” berwarna merah pada bagian kolom delete. Sehingga menjadi seperi ini.

82-dns-records-namesilo-deleted

Di baris pertama, klik “Edit” lalu ganti angka yang ada dengan IP VPS. Dalam contoh saya, saya akan ganti angka 107.161.23.204 dengan 45.63.14.193.

83-a-records-namesilo

Lalu di baris kedua, klik “Edit” dan ganti tulisan parking.namesilo.com dengan nama domain (lisamayfield.com).

84-cname-records-namesilo

Sekarang saatnya menunggu sampai proses propagasi selesai (maksimal 2 hari).

Namun menunggu adalah waktu yang paling dibenci. Karena proses propagasi sangat bergantung pada penyedia internet kita. Untuk itu, kita akan paksa proses propagasi ini secara instan menggunakan trik “host” file.

Bagaimana Cara Mempercepat Waktu Propagasi Domain?

OS Komputer saya menggunakan Windows 7, saya klik tombol “Start” dan ketik “Notepad”, klik kanan di icon Notepad dan klik kiri pilihan “Run as administrator”.

85-notepad-admin

Setelah jendela Notepad keluar, tekan kombinasi tombol CTRL+O lalu COPY tulisan berikut: C:\Windows\System32\drivers\etc\hosts, lalu PASTE di bagian Filename, diakhiri dengan klik tombol “Open”

86-open-windows-hosts-file

Kita akan melihat suatu file. Arahkan kursor ke paling bawah (buat new line) lalu isi dengan kode:

ip_address nama_domain
ip_address www.nama_domain

Silahkan sesuaikan nama domain dan IP Address nya. Kalau punya saya seperti terlihat pada gambar di bawah:

87-edit-windows-hosts-file

Save kalo sudah dan tutup jendela. Selanjutnya buka Command Prompt dengan cara klik tombol “Start” pada Windows dan ketik “cmd”.

88-cmd

Lalu jalankan perintah ipconfig /flushdns.

89-ipconfig-flushdns

PENTING!!! SETELAH 7 HARI, HAPUS KEMBALI 2 KODE TAMBAHAN DI ATAS.

Langkah terakhir adalah mengakses website kita untuk Install WordPress.

Bagaimana Step-By-Step Install WordPress?

Sebelum dimulai, kita buka kembali catatan Notepad yang berisi tentang rincian VPS, karena kita akan meng-update informasi yang ada, yaitu mengenai username dan password situs kita.

Silahkan buat informasi username & password sesuai keinginan, kalau saya seperti ini.

90-notepad-updated-lagi

Lanjut… Kita harus clear cahce browser dulu (atau bisa masuk Incognito / Private Windows). Selanjutnya, akses domain.

Kalau punya saya sudah berhasil seperti ini.

91-instalasi-wordpress

Kita tinggal lanjutkan ke proses instalasi WordPress dengan klik “Continue” –> “Let’s go!”

92-let-s-go-wordpress

Lihat catatan rincian Notepad, dan isi bagian database, username, dan password, untuk yang lainnya, abaikan!

93-wordpress-database-detail

Scroll ke bawah dan klik tombol “Submit” dan “Run the install”

94-run-the-install-wordpress

Isi “Site Title”, “Username”, “Password” untuk login website (lihat catatan Notepad!).

95-install-wordpress-field

Scroll ke bawah untuk isi email address (sembarang juga tidak masalah) dan klik “Install WordPress”.

UPDATE: Saya lupa mengenai email di file Notepad, silahkan masukan alamat email (sembarang juga ngga apa-apa)

UPDATE: Saya lupa mengenai email di file Notepad, silahkan masukan alamat email (sembarang juga ngga apa-apa)

Kalau ketemu halaman berikut berarti berhasil.

97-wordpress-berhasil-diinstall

Selanjutnya tinggal login untuk setting lebih lanjut sesuai kebutuhan masing-masing (misal ganti theme, struktur permalink, tambah plugin, dll). Berikut adalah homepage situs saya pada praktek ini.

98-demo-domain-homepage

Dan ini adalah inner page dengan permalink yang sudah SEO.

99-inner-page-pretty-permalink-wordpress

Bagaimana cara nambah domain di Nginx?

Prosesnya sama dgn nambah domain pertama, kalau nyimak dari awal, perintah-perintahnya seperti ini (sesuaikan nama domain kedua, dst.). Misal nama domain kedua adalah example.org, maka perintahnya.

cp /etc/nginx/sites-available/default /etc/nginx/sites-available/example.org.block

vi /etc/nginx/sites-available/example.org.block

ln -s /etc/nginx/sites-available/example.org.block /etc/nginx/sites-enabled/

service nginx reload

mkdir -p /var/www/html/example.org

Dan seterusanya.

Akhirnya…

Selesai juga panduan cara menyimpan situs di VPS, terutama VPS tipe Unmanaged. Kalau teman-teman mengikuti panduan ini dengan benar, sabar, harusnya hasilnya akan sama dengan saya.

Oia, saya sudah merangkum perintah di atas ke dalam satu artikel. Jadi jika nanti ingin nginstall wordpress di VPS (non panel) bisa langsung baca perintahnya di sini Rangkuman Perintah Instalasi WordPress di VPS Linux Debian (non Panel)

Apa Ada yang Kurang?

Sepertinya masih ada. Saya berencana membuatkan tutorial pindah hosting dari Shared ke Unmanaged VPS, dll yang belum bisa saya share.

Sekian tutorial SUPER panjang kali ini (+/- 6000-an kata), silahkan PRAKTEK!. Kalau ada pertanyaan, gunakan fasilitas komentar.

191 thoughts on “Lengkap! Cara Menggunakan VPS untuk Hosting WordPress

  1. Mas,, mau tanya donk,,, ini saya sudah instal sama persis sama yang di instruksikan, alhamdulilah berhasil dan web sudah naik. tapi ada masalah, pas bikin postingan baru, setelah bikin dan post, tapi postingan tidak bisa dibuka, “No input file specified.” gitu keterangannya, kalo homepagenya bisa dibuka, tapi postingannya enggak.
    minta solusinya donk

  2. Terima kasih yang tak terhingga gan….. ane belum pernah terbayang bisa instal vps, lengkap sekali step by step nya. cuma saya belum bisa menjalankan flushdns, jadi ya nunggu aja sampe domainnya aktif aja

    • wah gan…. setelah diikuti dengan teliti step by step nya…. Alhamdulillah sudah berhasil. Terima Kasih tak terhingga…..
      Tadi ada masalah karena ada tahapan yang tertinggal.

  3. Gak bisa gan, muncul pesan seperti ini,
    install-ionCube.sh: line 23: /etc/php5/conf.d/00-ioncube_loader.ini: No such file or directory

    • Fix gan.
      Saya coba merubah install-ionCube.sh,
      /etc/php5/conf.d/00-ioncube_loader.ini
      menjadi
      /etc/php5/cli/conf.d/00-ioncube_loader.ini

      php -v

      PHP 5.6.9-0+deb8u1 (cli) (built: Jun 5 2015 11:03:27)
      Copyright (c) 1997-2015 The PHP Group
      Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
      with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v5.0.14, Copyright (c) 2002-2015, by ionCube Ltd.
      with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2015, by Zend Technologies

  4. Mas, mau nanya,, saya sudah ikuti.. trus sampai tahap flushdns untuk mempercepat propagasi.. pas diakses (namadomain.com).. kok tetep yang welcome to nginx ya.. bukan instalasi wordpressnya kalo pas akses (namadomain.com/wp-admin/setup-config.php) malah 404 not found.. mohon pencerahannyaa

    terima kasih 🙂

  5. Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    E: Unable to locate package vim-y

    Kang, step ini saya gagal : apt-get install vim -y, gimana solusinya? Nuhun

  6. Kang, semua langkah sudah dilakukan namun pas mulai mau install WP dengan :
    example.com/wp-admin/setup-config.php

    keluar notif :
    404 Not Found
    nginx/1.8.0

    Salah dimana ya Kang? Nuhun..

  7. Alhamdulillah DONE/resolved juga setelah di format ulang dan ngulang dari awal. Hatur Nuhun pisan, sama tolong hapus comment sebelum ini ya Kang (ada nama web) lupa ke entry.
    Nuhun – Aditya

  8. Ada tutorial bikin email di VPS ga Kang? sama mau login atau pindah data dari VPS menggunakan Filezilla. Kalau ada mohon pencerahannya. Hatur Nuhun.

  9. mas, saya pake plugin byrev wp picshield. tapi gagal terus.cara setting wp picshield & nambah htaccess di Nginx gmana ya?
    thanks

    • Gampangnya, itu karena banyak visitor yang akses website. Kalau website nya WordPress, untuk ngakalinnya bisa make plugin cache. Ada banyak ada W3Total Cache, WP Super Cache, dll. Favorit saya ZenCache. Tapi dari sisi fungsi sama aja semuanya.

      • kalau cache sy pake wp super cache,
        bukan orang kaynay bot nya yang banyak 🙂 soalnya home page yg tinggi viewnya & kalau dicek ada IP yg masuk 500-1000x & udah banyak yg sy blok, rada lumayan turun si cpu nya cuma besok2 ada lagi IP yg baru 🙁

    • Mhn maaf, saya tidak pake plugin WP Super Cache, jadi saya tidak tahu. Alternativ lain, coba pake plugin ZenCache, tidak perlu ribet, kualitas mantap, penggunaan sangat mudah tinggal Aktiv-kan plugin, masuk ke setting lalu pilih Enable, trs Save. Selesai.

  10. Bos, saya instal ioncube loader sudah sukses seperti agan nicki diatas. Tapi waktu pasang theme kok gagal ya. Jd error gt. Apa ada yang perlu dirubah lagi. Terus cara hapus theme gimana? Setelah error soalnya saya harus install vps lagi. Maaf nubie masih belajar jd banyak tanya.

    • Error nya gimana, boleh di copas / skrinsut cek juga error log seperti apa. Kalo hapus theme bisa lewat perintah rm -fr /var/www/html/example.com/wp-content/themes/nama-theme-yang-akan-dihapus . Tapi cara itu tidak akan menyelesaikan masalah, harus di cek dulu error nya gimana.

  11. Udah saya cobain mas hardinal. Mau ny sih buat nampung 3 web.. Tnyata blum ada lanjutannya… Akhirnya pke webuzo lgi mas… Dtunggu kelanjutan tutorial nya mas. Sukses buat mas..

    Salam,,

  12. cuma mau nambahin dikit soalnya ane blajar jg dr agan hardinalz

    yg mau pake WWW configur server nya bisa pake ini:

    server {
    listen 80;
    server_name lisamayfield.com;
    return 301 http://www.lisamayfield.com$request_uri;
    }
    server {
             listen 80;
    
             root /var/www/html/lisamayfield.com;
    
             index index.php index.html index.htm index.nginx-debian.html;
    
             server_name www.lisamayfield.com;
    
             location / {
                     try_files $uri $uri/ /index.php?$args;
             }
    
    location ~ \.php$ {
    	fastcgi_split_path_info ^(.+\.php)(/.+)$;
    	fastcgi_pass unix:/var/run/php5-fpm.sock;
    	fastcgi_index index.php;
    	fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    	include fastcgi_params;
    }
    
    }

    Untuk ADDon Domain tinggal ulangi aja dari:

    cp /etc/nginx/sites-available/default /etc/nginx/sites-available/lisamayfield.com.block

    vi /etc/nginx/sites-available/lisamayfield.com.block

    ln -s /etc/nginx/sites-available/lisamayfield.com.block /etc/nginx/sites-enabled/

    service nginx reload

    mkdir -p /var/www/html/lisamayfield.com

    dan seterusnya sama seperti di atas

  13. mas mau nanya sy punya vps digital ocean trs sy install wp udah lancar bisa posting install plugin dan theme.. tapi setelah bbrp bulan kemudian ketika sy mau upload theme ada pesan ini di wp :

    Failed to connect to FTP Server 104.131.83.xxx:21
    Connection Information

    To perform the requested action, WordPress needs to access your web server. Please enter your FTP credentials to proceed. If you do not remember your credentials, you should contact your web host.

    jadi disuruh masukin hostname, ftp username dan ftp password
    gmn cara mengatasinya ya..?
    Terimakasih

    • Selama mas bisa akses VPS lewat SSH client (PuTTY, XShell, dll) maka, untuk upload data ke VPS bisa diganti pake SFTP (lebih aman dari FTP). Untuk penggunaan 99.9% sama dengan FTP.

      Cara menggunakan FTP, mas coba buka gambar yang saya bagi di forum yang ini http://ads.id/forums/images/imported/2014/09/B1FZBOp-1.jpg

      Kalau di gambar, itu target folder di VPS nya adalah /usr/share/nginx/html/hdpiczone.com. Sesuaikan target foldernya aja.

    • Itu kemungkinan karena belum di chown. Silahkan lakukan perintah berikut:

      chown -R www-data:www-data /var/www/html/example.com

  14. Gan Hardinalz..
    mau tanya, kalau ‘ latest.tar.gz ‘ blh di hapus g sih? karena kelihatan nya banyak jg mb nya ( aku lihatnya lewat filezilla ). Trus kalau boleh dihapus, perintah nya kalau lewat xshell gmn??
    Trus kalau pingin tahu setiap web berapa size nya, perintah nya gmn? du -h?

    tks gan

    • latest.tar.gz boleh dihapus kok. Perintahnya

      rm -f latest.tar.gz

      Kalo mau ngecek ukuran size suatu folder, mas Ronny coba masuk ke folder tertentu. Misal folder-nya adalah public_html domain example.com yang ada di dalem folder /var/www/html, maka jalankan perintah ini 1-1:

      cd /var/www/html/example.com

      du -sch

      Kalau mau di cek ukuran semua folder, maka perintahnya adalah

      du -sch *

  15. Alhamdulillah…
    Benar-benar terima kasih banget mas, tutorialnya lengkap banget. baru kali ini ketemu tutorial lengkap tanpa nyari-nyari tempat lain.
    Di tunggu tutorial selanjutnya mas 🙂

  16. Terima kasih.
    Tutorialnya lengkap. Dari yang tidak tahu sama sekal, alhamdulillah sekarang sudah punya ilmunya. Tinggal kumpulin duit, beli vps nya dan praktekkan ilmu dari mas Hardinal.

    Saya juga menantikan sharing mas hardinal berikutnya :
    – cara menambah domain di VPS ini (agar VPS bisa nampung lebih 1 domain)
    – tutorial pindah hosting dari Shared ke Unmanaged VPS

    request :
    – cara bikin sub domain di vps

    Sekali lagi, terima kasih mas Hardinal

  17. tengkyu mass,, tulisannya begitu detail dan sangat membantu newbi dalam belajar. terimakasih.. semoga semakin berkah ilmunya, amin. btw ane ikut request jg dengan mas mas yg lain, untuk tutorial untuk menambah domain baru di unmanaged debian 8 vps.. tengkyu tengkyu

  18. Dulu pake tutorial disini berhasil instal di VULTR. nah masalahnya sekarang Vps di vultr saya down selama kurang lebih 30jam. otomatis visitor kabur semua. tadinya di view via console sama sekali gak bisa ‘error 1106’ gak ngerti juga artinya apaan. nah sekarang bisa tapi muncul kayak gini http://prntscr.com/96kpog . dan web sama sekali gak bisa diakses. bantuin dong mas cara ambil data dari sini, rencana mau pindahin ke hosting lain (vps/shared). soalnya sama sekali gak ngerti apa2. mau instal ulang dari awal kan sayang banget blognya.

  19. Terima kasih, infonya sangat lengkap mas, tapi ada satu masalah saat jalankan “service nginx reload” muncul pesan seperti ini “Job for nginx.service failed. See ‘systemctl status nginx.service’ and ‘journalctl -xn’ for details.” ini kenapa ya mas?

  20. Ketemu mas masalahnya, saya copy contoh server block punya mas Hardinal diatas dan disitu ada bagian yang kelebihan spasi, pada baris ini “$document_root$fastcgi_script_ name;”
    seletah saya hapus spasinya sekarang udah normal mas.. 🙂

    Makasih

  21. salam, info tentang migrasi wordpress dari php ke javascript gmn mas? utk pindah menggunakan calypso apakah cukup dengan cara memasang plugin JetPack ? mohon pencerahannya mas. 🙂

  22. Super sekalii mas Hardinal, saya sudah mengikuti semua step diatas dan sudah berhasil, termasuk nambah website baru ( Add-on domain) dan nambah DB. Mau tanya mas, dari urutan langkah diatas bagaimana dnegan sisi keamanannnya mas ? apakah sudah cukup secure untuk server ini ? artinya apa perlu settingan dan install software lain ?? mohon pencerahannya mas. Terima Kasih atas sharingnya.

    • Sebetulnya dari sisi web (webserver, php, database) sudah cukup aman. Yang dapat menjadi pertimbangan mungkin bisa pada optimasi VPS mas, misalnya mengganti Port SSH, tambah user baru, disable root, menggunakan private/public key, dll.

  23. Mas Hardinal, kalau blog wordpress saya ada sertifikat SSL PositveSSL, pindahan sertifikat ssl nya bagaimana yah?
    Atau ada tutorial lain yang caranya sama dengan petunjuk ini khusus pemasangan sertifikat ssl?
    Makasih banyak jawabannya.

    • Ini maksudnya pindah VPS ya, ingin mindahin juga sertifikatnya? Kalau seperti itu, berdasar pengalaman saya, untuk pindahan sertifikat SSL tidak perlu repot, yang penting: semua yang dibutuhkan agar domain bisa diakses dengan HTTPS harus di copy semua dari server lama ke server baru, misalnya server key dan sertifikatnya. Lalu di bagian server blok juga disesuaikan.

      Koreksi saya jika keliru.

      Mhn maaf, belum ada jadwal untuk nulis tentang ini, belum ada waktu mas. 🙂

  24. Mas Hardinal tanya lagi dong,
    Saya sudah sampai install wordpress dan pointing domain + flush DNS.

    Waktu masuk ke alat situs saya, muncul pesan eror:
    “No input file specified.”
    Harusnya kan masuk ke prosesintal WordPress.
    Apa yang salah yah Mas?

  25. mas hardinal, saya sudah mengikuti langkah2nya dari awal sampai akhir. Tapi kok ketika akses website yg muncul bukan wordpress tapi tampilan “Welcome to nginx on Debian!”
    Salahnya dimana ya mas? Saya sudah coba instal ulang dan memulai langkah2 dari awal tapi tetap saja hasilnya sama.

      • ane uda ikutin tutornya dan berhasil, smua blog uda dipindahin ke vps tanpa panel ini, tapi ada satu blog yg errornya sama kaya diatas, jadi tampilannya welcome to nginx debian. ane uda di cek di domain blocknya kyanya gda yg salah, kira2 errornya dimana lagi ya om? apa karna ane pake www (www,domain,com), ato gmna?

        • Coba cek gambar ini https://www.hardinal.com/blog/wp-content/uploads/2015/07/65-root-index.jpg lihat baris nomor 4, setelah /var/www/html/ ada namadomain.com. Ganti sesuai nama domain mba. Kalau sudah, save. Dan yang paling penting jalankan ln -s /etc/nginx/sites-available/domainmbamaharani.com.block /etc/nginx/sites-enabled/ (kalau error abaikan) dengan dilanjutkan perintah ini service nginx reload. Coba akses kembali!

          Kalau masih belum berhasil silahkan copy-paste server block-nya ke sini (nama domain mba, karena privasi, bisa diganti jadi example.com) lalu kasih tau saya link pastebin-nya, agar bisa saya pelajari. Harusnya, kalau ngikutin tutorial di atas, full server block yang work terlihat seperti pada gambar ini: https://www.hardinal.com/blog/wp-content/uploads/2015/07/68-correct-server-block-nginx.jpg .

          • Ini berarti folder /var/www/html/webmbamaharani.com sudah terisi oleh file-file / skrip wordpress ya?

            Hmm, aneh banget, kalau dari server block sih udah betul.

            Tiga solusi:

            1. Sudah dicoba pake browser lain? Atau setidaknya di Incognito / Private Mode? Mungkin nyangkut di cache. Coba buka web nya di browser lain, dan browser lainnya harus clear cache + cookies dulu (CTRL+SHIFT+D).

            Kalau masih ngga bisa coba buka di perangkat lain, bisa di laptop lain, di HP, dll.

            2. Kalau langkah di atas sudah dilakukan namun masih seperti itu, coba cek http://prntscr.com/baeffs

            Baris nomer 5, di sana ada kode index.nginx-debian.html, hapus kode itu, lalu save dan jalankan service nginx reload.

            Khawatir memang file nya ada di sana, jalankan

            rm -f /var/www/html/webmbamaharani.com/index.nginx-debian.html

            Dan ganti isi index.html dengan menjalankan perintah di bawah (ganti: webmbamaharani.com)

            rm -f /var/www/html/webmbamaharani.com/index.html

            echo "Hore web berhasil disimpan di VPS menggunakan tutorial dari hardinal.com" > /var/www/html/webmbamaharani.com/index.html

            Lalu buka di browser lain (clear cache + cookie dulu). Kalau hasilnya ada tulisan “Hore web berhasil disimpan di VPS menggunakan tutorial dari hardinal.com” berarti sudah betul, tinggal dihapus file tsb, dan kalo memang skrip web wordpress sudah dipindah ke direktori /var/www/html/webmbamaharani.com/, harusnya bisa jalan.

            3. Ini DNS nya pake DNS registrar kan? Kalo mba pake DNS lain, misalnya CloudFlare, pastikan cache nya di-purge dulu.

          • uda bisa om, ane bkin ulang .block sama pathnya, tapi blognya gabisa di akses kalo tanpa www, errornya jadi 404 not found Nginx. tapi klo pake www bisa.

          • Sip kalo sudah bisa. Untuk yang error WWW dan tanpa WWW, di bagian komentar bawah, ada solusinya. Kalo bingung cari yang mana, silahkan mba CTRL+F tulisan ini: SOLUSI PERTAMA Mba akan diarahkan ke komentar saya atas pertanyaan pengunjung bernama Bee. Jawaban saya mengenai server block untuk WWW dan tanpa WWW. Jadi jika mba milih yang Tanpa WWW, saat akses example.com akan diarahkan ke http://www.example.com, tidak akan nemu error 404 lagi. Begitu juga sebaliknya.

  26. gilee… artikel yang luar biasa sekali mas..!! sangat-sangat mencerahkan…!! saya pake vps digital ocean mas, masih newbie..!! kalo pindah vps caranya gimana mas..?

  27. Setiap installasi web saya selalu buka panduan ini hee hee maklum kadang masih lupa dengan command-commandnya, salut dengan blog ini dan interaksinya, jgn sampai dihapus yaa mas hee he. saya ada pertanyaan lagi nehh mas, bagaimana caranya import db dari localhost ke mariaDB ? soalnya kalau dari panduan ini wordpress udah langsung dicreate tablenya oleh wp. makasih mas

    • Ini maksudnya

      1. Mas punya web di komputer mas, berencana untuk simpan web tsb di VPS.
      2. Lalu, File dan Folder nya mas upload lewat FileZilla.
      3. Database nya udah ada dlm file SQL.
      4. Mas ingin si database ini diimport ke MariaDB yang ada di VPS mas.

      Begitu?

      Kalau iya, silahkan mas upload si file database (yg dlm bentuk file SQL tsb) ke VPS, kalau saya biasa upload ke public_html situs. Kalau sudah berhasil di upload tinggal diimport menggunakan mysql command (lewat SSH client).

      Untuk perintahnya bisa mas baca di sini, no. 3, bagian “Import Database”

  28. ane yg nubi abadi jadi punya pekerjaan karena baca ilmu dari mas gan hardinal ini.. terimakasih yang banyak dan tak terhingga mas gan..salammmm
    lakalfatihah

  29. Wuihhhhhhh !!! kalau yg ini benar-benar ilmu bermanfaat banget buat saya…. Sangat cocok dengan judulnya. Ini sangat mudah dimengerti + semua penjelasan menggunakan VI editor juga detail bnget Min. Selama ini saya cuma menggunakan CentOS, wajib dicoba yg ini kayknya 😀 terima kasih banyak atas tutorialnya. Sekalian ijin SAVE nih Page, takut ilang…… Ditunggu mengenai update cara menambah domain + pindah hosting nya ke Debian min.

    Thanks Thanks Thanks….. Semoga setelah menggunakan cara ini, bisa menambah pemforma blog ane 😀

  30. makasih gan hardinal.. artikelnya sangat bermanfaat sekali.. sangat membantu saya dalam belajar manage VPS..
    — ditunggu update berikutnya ya gan.. 😀

  31. gan , saya newbie tingkat pertama , saya mau nanya . Apakah kalo beda distro misal pake centos apakah semua kode yg disebutin diatas itu sama

    • Tidak sama.

      Kalo VPS mas memiliki RAM 1GB, saya menyarankan menggunakan Webuzo. Cara saya di atas untuk VPS yang RAM nya 512MB ke bawah, karena untuk neken harga tapi tidak mengurangi performa.

  32. Tanya dong om, punya ane kok “400 Bad Request” ya pas mau instal wordpress. Step setelah flush DNS.
    pas ane masukin domain ane di browser terus enter, kemudian muncul tulisan “400 Bad Request”.

    Mohon bantuannya…

    • Edit file /etc/nginx/nginx.conf dengan perintah:

      vi /etc/nginx/nginx.conf

      Mas copy kode ini:

      large_client_header_buffers 4 16k;

      Lalu paste kode di atas tepat berada di bawah kode ini:

      client_max_body_size 100m;

      Nih gambarnya, tempatkan kode di atas, tepat berada di yang saya garis bawahi.

      Setelah selesai. Lakukan proses ini berturut-turut.

      1. Restart Nginx.
      2. Clear Cookies + Cache Browser mas.
      3. Coba akses kembali.
      • pertanyaan yang atas/pertama udah bisa om, terimakasih..

        kemudian mau nanya lagi om, kalo untuk nambah add ons domainnya gimana om, biar dns-nya bisa NS1.DOMAINKU NS2.DOMAINKU.

        Udah coba praktek dari mulai

        cp /etc/nginx/sites-available/default /etc/nginx/sites-available/domainku

        sampai step akhir, tpi blm bs live web nya

        Terimakasih sebelumnya

        • Betul, utk nambah add on domain, seperti yg mas sampaikan, copy server block default Nginx ke domain yang diinginkan, lalu edit dalemannya.

          Namun, kalo NS nya mau NS1.EXAMPLE.COM & NS2.EXAMPLE.COM, mas harus install DNS Server di VPS mas. Software DNS Server yang paling umum bernama BIND.

          Hanya saja, saya di sini memang tidak menyediakan tutorial DNS Server. Jadi, pertanyaan mas tidak bisa saya jawab secara rinci.

          Banyak kok, caranya kalo mas Googling.

  33. mas, saya sudah berhasil install wordpress nya. tq atas tutorial yang detail seperti ini. masalah nya skrg klo web saya diakses menggunakan www yang muncul malah index.nginx-debian.html gimana cara nya agar website saya bisa diakses dengan www ataupun tanpa www. tq atas bantuan nya

    • Ada dua solusi

      SOLUSI PERTAMA

      Lihat gambar ini baris nomor 8.

      Di sana tertulis seperti ini

      server_name lisamayfield.com;

      Ganti kode itu menjadi seperti ini (sesuaikan nama domainnya):

      server_name lisamayfield.com www.lisamayfield.com;

      Lalu restart nginx dan akses pake www.

      Silahkan mas coba dulu langkah di atas, kalau berhasil, baru lakukan langkah di bawah.

      Sudah dicoba?

      Lanjut..

      SOLUSI KEDUA

      Soalnya kalo solusi pertama belum dicoba, khawatir yang di bawah tidak ngerti.

      Lanjut ya.. Saya akan ibaratkan nama domainnya example.com

      Solusi pertama, akan menghasilkan akses web www dan tanpa www. Namun itu kurang efektif, karena yang kita inginkan hanya 1. Apakah web nya akan pake www atau tanpa www.

      Kalo web ingin tanpa www, maka saat akses www.example.com akan diarahkan ke example.com, begitu juga sebaliknya, kalau web nya ingin pake www, saat mas akses example.com akan diarahkan ke www.example.com.

      Itulah yang akan saya bahas di solusi kedua.

      A. Setting Nginx untuk web YANG INGIN PAKE WWW

      HAPUS SEMUA BARIS KODE yang ada di gambar ini dengan kode di bawah ini.

      server {
      	listen 80;
      	server_name example.com;
      	return 301 http://www.example.com$request_uri;
      }
      
      server {
      	listen 80;
      
      	root /var/www/html/example.com;
      	index index.html index.htm index.php;
      
      	server_name www.example.com;
      
      	location / {
      		try_files $uri $uri/ /index.php?$args;
      	}
      
      	location ~ \.php$ {
      		fastcgi_split_path_info ^(.+\.php)(/.+)$;
      		fastcgi_pass unix:/var/run/php5-fpm.sock;
      		fastcgi_index index.php;
      		fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      		include fastcgi_params;
      	}
      }
      

      B. Setting Nginx untuk web YANG TANPA WWW

      server {
      	listen 80;
      	server_name www.example.com;
      	return 301 http://example.com$request_uri;
      }
      
      server {
      	listen 80;
      
      	root /var/www/html/example.com;
      	index index.html index.htm index.php;
      
      	server_name example.com;
      
      	location / {
      		try_files $uri $uri/ /index.php?$args;
      	}
      
      	location ~ \.php$ {
      		fastcgi_split_path_info ^(.+\.php)(/.+)$;
      		fastcgi_pass unix:/var/run/php5-fpm.sock;
      		fastcgi_index index.php;
      		fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      		include fastcgi_params;
      	}
      }
      

      Silahkan dicoba, kabari saya kalau berhasil / tidak berhasil.

      • mas, saya coba opsi B karena saya mau web nya tampil tanpa www. berhasil mas, tq banget atas bantuan nya. gak nyangka reply nya secepat ini. 😀

      • terima kasih tutorialnya mas… ada hal nya mengganjal saya, saya ngikutin yang opsi A, setiap buka web, selalu ada tulisan request_uri di URL nya mas… gmna ya ngilanginnya ? sudah saya otak atik dan cari2 tapi belum nemu solusinya… thanks sebelumnya

  34. mas, saya install wp-optimize di wordpress tapi gak bisa optimasi database karena table nya innodb. saya cari info di google katanya innodb butuh spek hardware yg tinggi, disarankan untuk vps low end pake yg lain spt myslam. apakah itu betul mas? bisa kasi info cara untuk optimasi database nya mas? thx

    • Wp Optimize yang ini kan?

      https://wordpress.org/plugins/wp-optimize/

      Blog saya pake itu, dan bekerja dengan baik. Memang betul, InnoDB tidak dioptimasi, tapi untuk optimasi yang lain bekerja dengan baik. Ce SS ya di sini.

  35. mas mau tanya, itukan cara membuat blog baru di vps pakai wordpress nah kalo pindah blog yang udah running dari shared hosting kan udah ada wp-content ama databse sqlnya lalu cara nge-replace wp-content ama database .sql gimana ya?

    • Bagian VPS

      Pertama, tentu mas harus buat server blok dulu seperti di gambar ini. Jangan lupa di VPS mas, buat folder tempat web mas di simpan, saya misalkan nama domainnya example.com dan folder tempat menyimpan situs mas saya ibaratkan disimpan di /var/www/example.com/.

      Setelah dibuat folder nya lanjut ke 2 poses yang ini dan yang ini (sesuaikan nama domaiinya).

      Kedua, buat database untuk web mas. Proses nya harus sampai di gambar ini.

      Bagian Shared Hosting

      Pertama, isi public_html yang di shared hosting di buat zip aja. Jadi yang dibuat zip jangan hanya wp-content, tapi semua folder termasuk wp-includes, wp-admin, dan file2 lain. Intinya semuanya di zip. Kalau folder public_html nya jangan masuk ke file zip. Yang di zip isi dari si public_html. Saya ibaratkan nama file hasil zip bernama nama-file-zip.zip. Download file itu, save ke komputer mas.

      Kedua, Export file database lewat PhpMyAdmin, save hasil export ke komputer mas. File .sql ini akan diimport ke VPS menggunakan perintah ‘mysql’ (saya bahas di bawah).

      Lanjuuutt…

      Kita kembali ke VPS… Setelah web yang di Shared Hosting di zip dan di-download ke komputer mas, selanjutnya adalah proses upload file tersebut dari komputer mas ke VPS.

      Upload 2 buah file, yaitu isi file public_html yang sudah di zip (bernama nama-file-zip.zip) DAN file .sql nya. Upload 2 buah file itu ke VPS.

      Upload ke folder di mana web mas disimpan di VPS. Contoh di-upload ke /var/www/example.com/ . Cara upload nya pake FileZilla, kalo ngga ngerti bisa lihat gambar ini! (Ganti /usr/share/nginx/html/hdpiczone.com ya, sesuaikan!)

      Setelah berhasil di-upload, kembali ke XShell lalu extract file yang di ZIP. Perintah extract:

      cd /var/www/example.com/
      unzip nama-file-zip.zip

      Kasih perintah yang ada di gambar ini.

      Lanjut ke proses import database.

      Proses import database bisa dilakukan dengan menggunakan perintah ‘mysql’. Perintahnya ada di sini, bagian “Import Database” (scroll aja ada bagian bawah yang no. 3)

      Kalau berhasil / tidak berhasil, tolong kabari!

  36. setelah saya coba untuk akses website yang muncul tulisan ‘403 Forbidden nginx/1.10.1’, mohon bantuannya

    • Nginx error 403 umumnya terjadi karena Nginx nemu folder yang ga ada file bernama index , index.htm, index.html, index.php dan penunjung mencoba mengakses folder itu. Karena si nginx mencari salah satu file yang saya sebut sebelumnya namun tidak ketemu, maka dia akan nampilin error 403.

      Solusinya: coba pastikan file dan folder web wordpress nya sudah ditempatkan di /var/www/html/example.com (dgn example.com saya misalkan web punya mas). Kalo web wordpress, pastikan file bernama index.php ada di sana.

  37. tiap beberapa hari sekali vpsnya mati, jadi smua service harus di restart dan vpsnya jalan lagi. ane pake vultr yg $5/bln apa ga ckup buat nampung 5k visitor/day ya. ato ada faktor lain kah knpa vpsnya mati sndiri. (ane cek cpu usage di vultr bhkan ga sampe 50%)

    • Harus diketahui lebih lanjut, apa penyebab mati VPS. Apakah benar2 mati (system shut down) atau hanya Nginx, MariaDB yang mati. Untuk mengetahui penyebabnya, tambahkan kode ini di server block (ganti example.com)

      	access_log /var/log/nginx/example.com.access.log;
      	error_log /var/log/nginx/example.com.error.log;
      

      Kalau saya, saya biasa menambahkan kode itu tepat di bawah index. Lihat gambar ini baris nomor 7, saya tambahkan di situ (jadi akan ada penambahan 2 buah baris kode di atas). Save server block dan jalankan service nginx reload.

      Kalo VPS mati, bisa di cek file ini /var/log/nginx/example.com.error.log nanti akan ketahuan matinya karena apa. Untuk memudahkan baca file di atas, copy aja ke public_html. Tapi nanti aja di copy nya kalo kejadian VPS nya mati. Perintah copy ke public_html adalah

      yes | cp -rf /var/log/nginx/example.com.error.log /var/www/html/example.com/error_log.txt

      Nanti bisa di download ke laptop dengan mengakses file tsb di alamat http://example.com/error_log.txt

      • Kalo ane liat php5-fpm.sock failed errornya
        2016/06/12 00:20:34 [error] 16119#16119: *518485 connect() to unix:/var/run/php5-fpm.sock failed (11: Resource temporarily unavailable) while connecting to upstream, client: 162.158.167.117, server: xxxxxxx,com, request: “GET /xxxxxx-xxxxxx HTTP/1.1”, upstream: “fastcgi://unix:/var/run/php5-fpm.sock:”, host: “xxxxxxx.com”, referrer: “https://www.google.co.id/”

        • Sepertinya memang VPS nya ga kuat untuk make socket (php5-fpm.sock). Solusinya pake cara lama aja (ngga pake socket). Caranya:

          1. vi /etc/php5/fpm/pool.d/www.conf
          2. Cari tulisan listen = /var/run/php5-fpm.sock ganti dengan listen = 127.0.0.1:9000, save kalo sudah.
          3. vi /etc/nginx/sites-available/example.com (sesuaikan nama domain nya). Kalo ada banyak domain, lakukan juga untuk domain yang lain.
          4. Cari tulisan fastcgi_pass unix:/var/run/php5-fpm.sock; ganti dengan fastcgi_pass 127.0.0.1:9000;, save kalo sudah.
          5. Terakhir, jalankan service nginx reload; service php5-fpm reload;

          Lalu pantau apakah masih error atau ngga.

          • kenapa error lagi ya :D. padahal kemaren ane upgrade ke yg harga $10/bln.
            2016/06/25 03:16:57 [error] 496#496: *595557 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 162.158.167.110, server: xxxx,com, request: “GET /xx-xx HTTP/1.1”, upstream: “fastcgi://127.0.0.1:9000”, host: “xxxx,com”
            dan kalo ane liat dari tanggal 19 ada errornya, tapi baru hari ini sampe mati dan harus di restart.

          • Error seperti ini upstream timed out (110: Connection timed out) while reading response header from upstream secara sederhana menjelaskan bahwa Nginx mengeksekusi perintah PHP lebih dari 60 detik (defaultnya 60 detik). Mungkin web nya kebanyakan plugin, rame, dan cukup ngeberatin. Install juga plugin cache yang simpel aja, tapi bekerja dengan baik (favorit saya ZenCache)

            Solusi sekarang, coba edit beberapa bagian.

            1. vi /etc/nginx/sites-available/example.com.conf

            Cari tulisan:

            	location ~ \.php$ {
            		fastcgi_split_path_info ^(.+\.php)(/.+)$;
            		fastcgi_pass unix:/var/run/php5-fpm.sock;
            		fastcgi_index index.php;
            		fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            		include fastcgi_params;
            	}
            

            Tambahkan kode fastcgi_read_timeout 180; di baris kedua terakhir sehingga menjadi seperti ini (angka 180 bisa diganti):

            	location ~ \.php$ {
            		fastcgi_split_path_info ^(.+\.php)(/.+)$;
            		fastcgi_pass unix:/var/run/php5-fpm.sock;
            		fastcgi_index index.php;
            		fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            		include fastcgi_params;
            		fastcgi_read_timeout 180;
            	}
            

            2. vi /etc/php5/fpm/php.ini

            Cari tulisan max_execution_time dan max_input_time , lalu ubah agar nanti kode nya bernilai seperti ini:

            max_execution_time = 600
            max_input_time = 600
            

            Skrinsut: Klik di sini.

            Terakhir jalankan: service nginx restart dan service php5-fpm restart

            Saran lainnya, coba DNS nya pake DNS CloudFlare. Kalo sudah pake CloudFlare, install Varnish juga di VPS nya, pasti akan ringan (cuma saya belum ada tutorialnya).

  38. Saya mengalami masalah seperti ini mas Hardinal, NOT CONNECTED Servers di serverpilot.io Semogah mas dapat membantu saya… 😀

  39. Mas mau nanya, kl backup database kaya file php css di digitalocean gimana caranya ya? Trs ada file ppk itu guna nya buat apa dan katanya harus pakai putty n filezilla terimakasih

    • Mas mau nanya, kl backup database kaya file php css di digitalocean gimana caranya ya?

      Bisa di backup secara otomatis, caranya pake cron job. Saya belum ada tutorial nya.

      Trs ada file ppk itu guna nya buat apa dan katanya harus pakai putty n filezilla

      File .ppk itu untuk digunakan akses server lewat PuTTY / FileZilla. Dengan file itu, tidak perlu memasukan password. Untuk tutorialnya lihat postingan saya di forum ini.

  40. Saya terus mengikuti blog yg useful ini, setiap kali install atau setup server baru saya selalu buka panduan ini..hee hee maklum pemula gak hafal2 commandnya. tapi kali ini saya ada masalah, mulai tahap awal sudah berhasil sampai download dan move file installasi wordpress, namun ketika mau install WP / akses domainnya..muncul “400 Bad Request – Nginx” kenapa gitu yaa mas…mohon pencerahnnya, udah coba google tapi belum berhasil nemu solusinya.

        • mmhh makasih fast responsnya mas, ohh iyaa udah ngikuti petunjuk dgn menambahkan “large_client_header_buffers 4 16k;” namun sampai hari ini masih belum bisa, masih muncul “400 Bad Resquest – Nginx”.

          ada yg bilang bisanya masalah propagasi atau DNS yg belum sempurna. tapi sudah mengikuti tutorial, saya pikir domain sudah tidak ada masalah.

          kenapa yaa..? mungkin ada altrenatif lain mas atau mungkin temen2 yang lain bisa bantu. thanks

          • Sudah di reload belum mas dengan perintah service nginx reload? Kalau mau aman, coba ulang lagi aja, pake rangkuman perintah di link di atas, cepet kok.

  41. Mohon pencerahannya, setelah selesai sampai proses : Bagaimana Cara Mempercepat Waktu Propagasi Domain? selesai, kemudian mau install wordpress tapi saya akses domain saya nggak muncul wordpress, masih muncul : Welcome to nginx!, langkah apa yang harus saya lakukan yah? thx..

  42. makasih banyak mas cuma tutorial ini yg berhassil saya praktekan,, mau tanya juga, kalo saya pake contos 7 kenapa pas ganti permalink di wp database jadi error ya mas? sebelum ganti permalink baik2 saja, itu juga berpengaruh di VPS saya, saya coba akses mysql tulisan nya error gitu, pas masukkin pasword juga error padahal pass nya sudah benar.. mohon pencerahan nya untuk centos 7

    • Pake Nginx? Mungkin settingan PHP nya belum ditambahkan ke virtual host, tiap distro beda. Yang di tutorial ini kan Debian, saya kurang tau CentOS seperti apa. Aneh juga ga bisa masuk mysql padahal password yang diinput sudah betul. Kurang tau juga mas.

  43. kak..request dong…!!!!
    itu cara seting dedi server sama ama setting vps ya???buatin dong setting dedi server dari a – z ya…

  44. Mantap sekali ilmunya ini. Terima kasih sudah berbagi.

    Saya ada pertanyaan, bagaimana cara membuat blog dengan sistem folder? Jadi misalnya saya punya VPS dengan Nomor IP tertentu (contoh: 32.220.56.56). Saya ingin install moodle, wordpress dan joomla.

    Apakah bisa alamatnya seperti ini:
    http:// 32.220.56.56/moodle
    http:// 32.220.56.56/wordpress
    http:// 32.220.56.56/joomla

    Terima kasih

    • Tinggal buat aja folder folder itu

      mkdir -p /var/www/html/moodle/
      mkdir -p /var/www/html/wordpress/
      mkdir -p /var/www/html/joomla/
      

      Kemudian atur di bagian server block nya dengan menambahkan kode ini

      vi /etc/nginx/sites-available/default

      	....
      	location /moodle {
      		try_files $uri $uri/ /moodle/index.php?$args;
      	}
      	location /wordpress {
      		try_files $uri $uri/ /wordpress/index.php?$args;
      	}
      	location /joomla {
      		try_files $uri $uri/ /joomla/index.php?$args;
      	}
      	....
      

      Jangan lupa reload server block nya.

      Silahkan akses http:// 1.2.3.4 /moodle dst…

  45. mas, kalau mau bikin sub domain di vps baru, sementara domain utama di server lain, apa sama semua langkah2nya dengan tutorial ini mas? terutama distep Konfigurasi Server Block Nginx dan step Cara Buat Database di VPS jg diikuti mas? trims

  46. OK mas gan, saya paham meskipun sedikit bingung.
    Gini gan aku beli VPS and semi manage. Aku juga sudah ganti name server di addon domain, namun ada sedikit masalah, karena di VPS masih belum bekerja dengan baik. Setelah saya cek ada beberapa masalah, seperti :

    Failed to find name servers of domain.com/IN.

    No name servers found at child.
    No name servers could be found at the child. This usually means that the child is not configured to answer queries about the zone.

    Not enough nameserver information was found to test the zone domain.com, but an IP address lookup succeeded in spite of that.

    Aku tunggu petunjuknya dan mohon kirim ke email
    thanks banyak

  47. Saya sdah mencoba menggunakan vultr, baik yg RAM nya 768MB ($5) maupun yg 1024MB ($10). Saya install webuzo, lalu saya install wordpress melalui webuzo, suatu ketika entah kenapa website tidak bisa dibuka, bahkan mau buka cpanel(webuzo) juga gak bisa, saya coba untuk restart lewat cpanel vultr, ternyata webuzo yg saya install hilang, website tidak bisa dbuka sama sekali.
    Saya tunggu beberapa saat, situs tetap gak bisa dibuka, tetapi saya bisa login lewat putty ataupun lewat concole di panel vultr.
    Saya cek Folder dan database masih ada, tetapi website masih saja gak bisa tampil.
    Mohon solusinya…

    • Webuzo sdh ngga rekomended mas. Dengan upgrade ke paket $10 Vultr tidak akan menyelesaikan masalah. Harus bener2 “dituning” daleman Webuzo nya mulai dari konfigurasi mysql (my.cnf), php.ini, dll. Kalo mau pake panel, coba VestaCP.

      Mengenai pertanyaan mas, tidak bisa saya jawab, karena saya sdh pensiun dari Webuzo.

  48. Om mau tanya, ane udah selesai lakuin tutorialnya, dan akhirnya senang sekali bisa setting vps sendiri.

    tapi di atas kan hanya ada study case buat setting domain di namsilo, kalo di namecheap bagaimana ya? apa aja yang harus saya rubah

    Saya puyeng, saya coba cari2 di google ga nemu

  49. kalo nambah SSL gimana ya mas, baik SSL gartisan kayak letencrpt atau SSL yg berbayar..apa ada tutorialnya mas?
    request donk trims

  50. Sumpah keren banget ini tutorial, lengkap detail, dan sangat membantu banget. Saya ikuti dan jadi bisa. Mas ada sedikit pertanyaan, setelah saya ikuti tutorial ini, semua berhasil. Nah, saya coba install Adminer dgn cara ap-get install adminer. Kemudian tampilan utama barubah menjadi Apache2, bukan lagi welocme nginx, apa itu masalah?
    Karena khawatir masalah, saya uninstall Adminer dgn cara ap-get remove adminer. Tapi, saya akses IP saya masih tampilan awal apache2, bukan lagi nginx. Itu bagaimana ya?

    • Remove aja Apache nya, jalankan 3 perintah ini

      apt-get remove apache* -y
      apt-get purge apache* -y
      rm -f /var/www/html/index.html
      
  51. gan ane gagal di instal nginx itu kenapa ya?

    Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
    permitted by applicable law.
    Last login: Mon May 22 14:19:54 2017 from 36.82.89.253
    root@ngapak:~# apt-get install nginx -y
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    The following extra packages will be installed:
    fontconfig-config fonts-dejavu-core libfontconfig1 libgd3 libgeoip1 libjbig0
    libjpeg62-turbo libnginx-mod-http-auth-pam libnginx-mod-http-geoip
    libnginx-mod-http-image-filter libnginx-mod-http-xslt-filter
    libnginx-mod-mail libnginx-mod-stream libossp-uuid16 libtiff5 libvpx1
    libxml2 libxpm4 libxslt1.1 nginx-common nginx-full
    Suggested packages:
    libgd-tools geoip-bin uuid fcgiwrap nginx-doc ssl-cert
    Recommended packages:
    geoip-database xml-core
    The following NEW packages will be installed:
    fontconfig-config fonts-dejavu-core libfontconfig1 libgd3 libgeoip1 libjbig0
    libjpeg62-turbo libnginx-mod-http-auth-pam libnginx-mod-http-geoip
    libnginx-mod-http-image-filter libnginx-mod-http-xslt-filter
    libnginx-mod-mail libnginx-mod-stream libossp-uuid16 libtiff5 libvpx1
    libxml2 libxpm4 libxslt1.1 nginx nginx-common nginx-full
    0 upgraded, 22 newly installed, 0 to remove and 3 not upgraded.
    Need to get 5177 kB of archives.
    After this operation, 12.7 MB of additional disk space will be used.
    WARNING: The following packages cannot be authenticated!
    nginx-common libnginx-mod-http-auth-pam libnginx-mod-http-geoip
    libnginx-mod-http-image-filter libnginx-mod-http-xslt-filter
    libnginx-mod-mail libnginx-mod-stream nginx-full nginx
    E: There are problems and -y was used without –force-yes
    root@ngapak:~# vi /etc/nginx/nginx.conf
    1
    ~

  52. Trims SUHU hardinal, saya ingin bertanya… bagaimana cara saya masukkan web saya yang ada dikomputer … ke server … ini kan tutorial buat wordpress … please… tolongin saya gan

  53. nginx -t
    nginx: [emerg] a duplicate default server for 0.0.0.0:80 in /etc/nginx/sites-enabled/lisamayfield.com.block:2
    nginx: configuration file /etc/nginx/nginx.conf test failed

    kalau ada eror kayak gitu gimana yuh gan???

    • lisamayfield.com ganti dengan domain mas dan mengenai error pastikan kode nya sesuai dengan yang ada di skrinsut

  54. Terimakasih byk mas hardinal atas ilmunya, izin bertanya mas, apakah cara ini juga berlaku buat seting dedicated server unmanaged ? dan kalau bisa boleh mas bikin tuturial lengkap sperti ini khusus untuk dedicated server unmanaged ya mas. makasih byk skali lagi.

  55. Makasih suhu, sebelumnya saya ucapkan banyak terimakasih atas ilmunya mas 😀
    Owh iyaa mas saya dapat stack di instalasi PHP 5 dan kawan”nya ini mas :

    root@x-goozo:~# apt-get install php5-fpm php5-mysqlnd php5-gd php5-curl php5-cli -y
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    Package php5-fpm is not available, but is referred to by another package.
    This may mean that the package is missing, has been obsoleted, or
    is only available from another source

    Package php5-cli is not available, but is referred to by another package.
    This may mean that the package is missing, has been obsoleted, or
    is only available from another source
    However the following packages replace it:
    php7.0-cli:i386 php7.0-cli

    Package php5-gd is not available, but is referred to by another package.
    This may mean that the package is missing, has been obsoleted, or
    is only available from another source

    E: Package ‘php5-fpm’ has no installation candidate
    E: Unable to locate package php5-mysqlnd
    E: Package ‘php5-gd’ has no installation candidate
    E: Unable to locate package php5-curl
    E: Package ‘php5-cli’ has no installation candidate
    Makasih suhu, sebelumnya saya ucapkan banyak terimakasih atas ilmunya mas 😀
    Owh iyaa mas saya dapat stack di instalasi PHP 5 dan kawan”nya ini mas :

    root@x-goozo:~# apt-get install php5-fpm php5-mysqlnd php5-gd php5-curl php5-cli -y
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    Package php5-fpm is not available, but is referred to by another package.
    This may mean that the package is missing, has been obsoleted, or
    is only available from another source

    Package php5-cli is not available, but is referred to by another package.
    This may mean that the package is missing, has been obsoleted, or
    is only available from another source
    However the following packages replace it:
    php7.0-cli:i386 php7.0-cli

    Package php5-gd is not available, but is referred to by another package.
    This may mean that the package is missing, has been obsoleted, or
    is only available from another source

    E: Package ‘php5-fpm’ has no installation candidate
    E: Unable to locate package php5-mysqlnd
    E: Package ‘php5-gd’ has no installation candidate
    E: Unable to locate package php5-curl
    E: Package ‘php5-cli’ has no installation candidate

    Mohon pencerahannya mas 😀
    Mohon pencerahannya mas 😀

  56. Halo mas, bagaimana cara menggunakan SSL gratis dari cloudflare untuk setingan VPS diatas mas? Saya sudah sukses menginstal WP di VPS dengan tutorial diatas, tapi jika fitur SSL dari cloudflare saya aktifkan blog tidak bisa diakses.

  57. Waktu mw mengedit dan memasukan kode agar systemnya di update, tapi gk pernah bisa menulis di baris paling akhir..selalu paling atas..gimana ya??

  58. Akhirnya setelah dipandu sama mas Hardinal, bisa juga setting VPS tanpa panel 🙂
    Tapi emang mending pake jasa mas Hardinal biar lebih cepet daripada pusink 😀

    Selain murah, cepat tentunya berkualitas. Konsultasi juga sangat ramah dan banyak ilmu yang berfaedah.

  59. mantap master.. kebetulan lagi cara urusin vps.. nanti kalau saya sewa di vultr bisa dibantukah? (ane bookmark lamannya)
    sekarang masih pake shared hosting kalau dilihat dengan harga vps jauh banget yaa. tapi piye kecepatannya krn lokasinya ga disini? maklum blog indonesia target orang indonesia juga.

  60. bang sekalian buat tutorial instal wp di vps digitalocean dong, soalnya dulu saya dibuatin temen, waktu lagi eror saya kebingungan

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.