Cara Seting VPS di Digital Ocean Mulai Dari 0 Sampai Website Live

Berikut ini adalah step by step super komplit disuapin cara seting VPS di digital ocean mulai dari 0 putul sampai website live. Secara garis besar berikut adalah step by step nya yang kemudian akan saya jabarkan lebih mendalam per step nya.

  1. mengarahkan nameserver ke nameserver digitalocean
  2. create droplet
  3. seting DNS
  4. install controll panel
  5. install wordpress

Nah untuk detailnya ada di artikel di bawah ini

1) Arahkan nameserver pada regristar domain ke nameserver digital ocean

Dalam hal ini saya menggunakan namecheap sebagai registrarnya. Untuk mengubah nameserver silahkan login ke akun namecheap anda kemudian pada menu “menu” di pojok kanan atas pilih “manage domains”.

Pilih domain yang ingin anda arahkan nameserver-nya ke nameserver digitalocan.

Pilih menu “transfer DNS to webhost”.

Pada bagian “Specify Custom DNS Servers” isikan nameserver dari digitalocean yaitu:

  • ns1.digitalocean.com
  • ns2.digitalocean.com
  • ns3.digitalocean.com

Step ini biasanya butuh waktu propagation maksimal 24 jam agar setingan di atas ngefek.

2)  create droplet di digitalocean

Silahakan masuk ke akun digitalocean anda kemudian klik tombol “create droplet”.

  • beri nama droplet anda pada bagian droplethostname
  • pada bagian select size silahkan pilih paket mana yang ingin anda pakai. Jika ini adalah pertama kali anda mencoba silahkan coba yang paling murah dulu saja.
  • pada bagian select region silahkan pilh letak server vps yang anda inginkan.
  • Pada bagian distribution anda bisa memilih sistem operasi yang ingin anda gunakan. Dalam hal ini saya pilih ubuntu 14.04 32 bit. Saya pilih 32 bit karena paket droplet saya yang paling murah RAM nya hanya 512MB saja.
  • klik “create droplet”

tunggu kurang lebih 1 menit maka droplet anda akan selesai dibuat dan anda mendapatkan email berisi credential (username/password) yang bisa anda pakai untuk login ke droplet anda. Catat username, password, dan data lainnya di email tersebut jangan sampai hilang.

Jika droplet sudah sukses di create halaman digitalocean anda akan menjadi seperti ini.

Screen Shot 2015-02-23 at 11.57.27 AM

3) Seting DNS

Klik menu DNS (sebelah kiri) pada akun digitalocean anda, kemudian klik tombol “add domain”.

  • Pada bagian “name” isi dengan nama domain anda, misal ngehosting.com (tanpa www)
  • pada bagian ip address isi dengan ip address droplet anda (ada di email)
  • kemudian pilih droplet yang baru saja kita buat di atas.
  • klik “create domain”

Selanjutnya supaya web kita nanti nya bisa diakses dengan menggunakan www maupun tanpa www maka kita tambahkan 1 record lagi.

  • klik tombol “add record”
  • isi bagian name dengan www bagian ip address dengan ip address yang kita dapat di email
    Screen Shot 2015-02-23 at 1.58.12 PM
  • kemudian klik tombol “create”

 4) Install vestacp sebagai pengganti cpanel

Untuk controll panel disini saya akan menggunakan vestacp. Sebenarnya ada banyak pilihan controll panel yang bisa anda pakai mulai dari yang berbayar seperti cpanel maupun yang gratisan seperti webuzo, dll.

Kenapa vestacp? sebenarnya ini masalah selera saja, pilihan saya yang gratisan ada 2 yaitu webuzo dan vestacp. Dulu sempat install webuzo tapi ternyata script saya yang butuh curl tidak bisa jalan. Kemudian webuzo fiturnya sangat-sangat lengkap, bahkan fitur-fitur yang tidak saya perlukan pun banyak sekali terinstall seperti cms-nya tersedia banyak sekali padahal saya cuma butuh wordpress saja. Tentu saja hal tersebut memberatkan resource VPS saya.

Alasan lainnya vestacp sangat ringan karena minim sekali viturnya. Untuk awal-awal memang terlihat agak bingung dan tidak user friendly tetapi setelah paham ternyata simple kok. Selain itu kelebihan vestacp dia menggabungkan antara apache dan nginx untuk web service nya. mantab kan?

Oke, kita lanjut bagaimana cara install vestacp di VPS digitalocean.

Pertama kita perlu remote SSH ke VPS. Jika anda menggunakan windows bisa menggunakan putty, jika anda pengguna mac atau linux bisa remote langsung lewat terminal/console.

Ketikkan perintah di bawah ini untuk remote SSH ke VPS digitalocean
$ ssh root@162.243.248.114

Are you sure you want to continue connecting (yes/no)? yes

kemudian anda akan diminta untuk mengubah password. lakukan perubahan.

# curl -O http://vestacp.com/pub/vst-install.sh

bash vst-install.sh

Anda akan disuruh untuk mengisi beberapa field seperti email dan hostname.

Do you want to proceed? [y/n]): y
Please enter valid email address: ngehosting@gmail.com
Please enter hostname [ngehosting]: ngehosting.com

Jika sukses maka anda akan mendapatkan pesan seperti ini.

Congratulations,
you have successfully installed Vesta Control Panel.

nah, di atas pesan itu ada beberapa info penting yang harus anda catat yaitu url, user, dan password yang bisa anda gunakan untuk login ke vestacp anda.

Sekarang coba akses vestacp anda. Jika anda menggunakan chrome maka akan muncul pesan seperti error, seperti dibawah.

Screen Shot 2015-02-23 at 2.46.14 PM

 

Tidak perlu kawatir, klik saja “proceed to xyz (unsafe)”

Selanjutnya masih di halaman vestacp setelah login, klik menu admin yang ada pada pojok kanan atas. Ganti password dengan password yang mudah anda ingat.

Pada default nameservers isi dengan:

ns1.digitalocean.com, ns2.digitalocean.com, ns3.digitalocean.com

kemudian save.

Sekarang klik menu “web” dan “add web domain” (sorry di gambarnya salah, yang saya lingkari edit harusnya “add web domain”)

Screen Shot 2015-02-23 at 2.52.15 PM

Isi domain dengan nama domain anda misal ngehosting.com, kemudian klik “add” (silahkan lihat advance option jika ingin menambah fitur lainnya)

Sekarang klik menu “database” kemudian klik “edit” pada database admin_default kemudian ganti passwordnya.

5) Install WordPress

Controll panel sudah punya, database juga sudah punya, untuk selanjutnya kita bisa install wordpress. Caranya kita kembali ke remote SSH.

Pada terminal atau putty kita pindah directory ke directory “public_html”, caranya:

# cd /home/admin/web/ngehosting.com/public_html
isi ngehosting.com dengan nama domain anda.

download package wordpress paling terbaru

# wget http://wordpress.org/latest.zip
# ls
index.html latest.zip robots.txt

Sebelum kita extract kita hapus dulu file default index.html dan robots.txt nya
# rm -rvf index.html
# rm -rvf robots.txt

Sekarang kita extract file .zip nya

# unzip latest.zip
hapus file lates.zip
# rm -rvf latest.zip
selanjutnya kita pindahkan semua file hasil extract tadi yang berada di folder wordpress ke directory tempat kita berada saat ini.
# mv wordpress/* ./
hapus folder wordpress
# rm -rvf wordpress/
# cp wp-config-sample.php wp-config.php

edit file wp-config.php
# nano wp-config.php
isi data database sehingga menjadi seperti ini
/** The name of the database for WordPress */
define('DB_NAME', 'admin_default');

/** MySQL database username */
define(‘DB_USER’, ‘admin_default’);

/** MySQL database password */
define(‘DB_PASSWORD’, ‘xyz’);

/** MySQL hostname */
define(‘DB_HOST’, ‘localhost’);

tekan ctrl x, kemudian y untuk meinyampan

sekarang coba akses website anda melalui web browser dengan mengetikan domain name nya (misal ngehosting.com), biasanya masih belum bisa karena dns nya masih propagasi. Jika belum bisa coba akses dengan alamat IP nya yang kita dapatkan di email. Seharunya sampai sini anda akan mendapatkan halaman install wordpress. silahkan di isi semua dan klik next. voillaa… web anda sudah live dan bisa diakses melalui ip address. Selanjutnya anda tinggal nunggu saja DNS propagation supaya web bisa diakses dengan nama domainnya. biasanya kurang dari 24 jam.

Gimana cara seting VPS di digitalocean nya? mudah bukan?

Continue Reading

Solusi Space VPS Cepat Habis

Pertama menggunakan VPS agak kaget juga ketika space terasa cepat sekali habisnya. Menggunakan VPS dengan space 10G dengan menggunakan control panel vestacp yang mana control panel vestacp konon adalah control panel yang palaing light weight (ringan) dan hemat space tapi ternyata space VPS 10G cepat sekali habil. Padahal hanya diinstall 1 website saja. Bagaimana solusinya?

Solusinya adalah tentu saja mencari file apa sebenarnya yang banya memakan space di VPS kita. Untuk mencari file mana yang berukuran besar anda bisa menggunakan perintah berikut ini.

 
du -h / --max-depth=1

Hasilnya kira-kira seperti ini:

1.3G /usr
8.0K /data
4.0K /mnt
8.0K /media
7.9M /etc
8.0K /srv
16K /lost+found
4.0K /dev
5.5G /home
93M /boot
12M /sbin
687M /var
28K /tmp
649M /lib
9.6M /bin
376K /run
0 /sys
4.0K /opt
4.0K /lib64

Nah dari situ ketahuan folder mana saja yang ukuranya cukup besar. Biasanya vestacp melakukan backup rutin setiap hari dan ini tentu saja memakan banyak space. Selain itu cek juga file-file log error biasanya cukup besar jika VPS anda sering mengalami error.

Setelah perintah di atas gunakan perintah seperti ini untuk men-tracking lebih dalam lagi dari folder-folder di atas.

du -h /home/ --max-depth=1

/home/ bisa anda ganti dengan nama folder yang memakan space paling banyak di VPS anda. Kalau di VPS saya folder setelah saya lakukan perintah di atas ternyata folder /home/backup/ yang memakan banyak sekali space. Setelah ketemu anda bisa menghapus file-file yang memakan banyak space tersebut, tentunya pastikan dulu VPS anda tidak terpengaruh jika anda menghapus file tersebut.

Continue Reading

Membuat Swap File Pada VPS Ubuntu

Membuat atau mengaktifkan swap file ternyata tidak sesusah 5-7 tahun yang lalu. Kalau dulu untuk membuat swap file bisa dengan menggunakan perintah dd dengan menggunakan option-option yang cukup membingungkan jika tidak terbiasa bekerja di system linux. Dulu perintahnya untuk membuat block yang akan dipakai sebagai swap file adalah seperti ini:

sudo dd if=/dev/zero of=/swapfile bs=1G count=4

Anda harus nunggu beberapa menit sampai perintah di atas selesai di eksekusi. Namun sekarang ternyata untuk membuat swap pada linux jauh lebih mudah. Di artikel ini akan saya tuliskan step by step membuat swap file pada sistem operasi ubuntu. Step by step ini saya pakai ketika VPS saya yang di digital ocean perlu saya tambah memorinya namun karena untuk upgrade ke paket yang lebih besar harganya mahal saya coba akalin saja dengan menambahkan swap file. Berikut cara selengkapnya.

1. Buat file di root direktori dan alokasikan space sebesar 4G (biasanya 2 kali dari besar RAM, lebih besar lebih bagus)

sudo fallocate -l 4G /swapfile

2. Ubah file permission-nya menjadi 600

sudo chmod 600 /swapfile

3. Ubah folder /swapfile yang telah dibuat sebelumnya pada langkah 1 menjadi sebuah file swap

sudo mkswap /swapfile

4. Atifkan file swap tersebut

sudo swapon /swapfile

Sampai di situ maka kini ubuntu anda sudah mempunyai file swap sebesar 4G dan telah aktif. Jadi kapan saja server atau vps anda kehabisan memori maka sistem operasi akan menggunakan swap file sebagai memori tambahan.

Untuk mengecek apakah swap file yang kita buat tadi sudah benar-benar aktif atau belum bisa menggunakan perintah seperti ini

sudo swapon -s

Berikut ini adalah screenshot saya waktu membuat file swap untuk vps ubuntu saya di digital ocean.

membuat swap file di vps ubuntu

Continue Reading

Internal Server Error 500 Saat Install WordPress Di VPS

Anda pernah mengalami masalah seperti itu di VPS? ketika ingin menginstall wordpress atau apapun itu yang berbau PHP muncul error internal server error 500. Kejadian ini menimpa saya ketika saya menggunakan VPS dari digitalocean. VPS saya install webuzo sebagai ganti cPanel untuk memudahkan saya menginstall kebutuhan server seperti apache, php, dan MySql. Setelah installasin webuzo selesai giliran mau install wordpress ternyata muncul pesan error seperti itu. Bagaimana solusinya? Berikut ini solusinya.

Setelah berkutat beberapa jam akhirnya ketemu juga solusinya. Sempat melayangkan ticket ke pihal digitalocean namun ternyata jawabanya kurang memuaskan. Setelah cari-cari browsing-browsing berikut adalah solusi error 500 di vps yang mungkin bisa menjadi solusi bagi teman-teman yang kebetulan punya masalah yang sama.

Pertama pastikan terlebih dahulu apache, dan php sudah benar-benar terinstall di vps anda. Caranya bisa masuk ke control panel webuzo anda dan pada bagian Apps lihat apakah apache dan PHP sudah terinstall.

jika sudah terinstall sekarang coba anda lihat log error dari apache letaknya ada di sini /usr/local/apps/apache/logs/domainkamu.err gunakan perintah berikut ini untuk megecek errornya.

tail -f /usr/local/apps/apache/logs/grassclothwallpaper.net.err

jalankan perintah di atas kemudian coba browsing lagi url yang menghasilkan error 500 dari browser anda. Seharusnya error akan muncul di console kira-kira seperti ini.

Thu Oct 23 09:20:04 2014] [error] [client 207.46.13.79] SoftException in Applic
ation.cpp:404: Mismatch between target UID (1000) and UID (0) of file “/home/her
ahadi/public_html/index.php”
[Thu Oct 23 09:20:04 2014] [error] [client 207.46.13.79] Premature end of script
headers: index.php

Error seperti itu ternyata disebabkan oleh file permission yang salah. coba cek file permission di folder public_html anda dengan perintah ls -la dan lihatlah pemilik dan group dari file tersebut. Seharunya adalah username anda, jika root maka salah. Seharunya adalah seperti ini:

root@domain:~# ls -la /home/herahadi/public_html/
total 6620
drwxr-xr-x 6 herahadi herahadi 4096 Oct 23 09:14 .
drwxr-xr-x 4 herahadi herahadi 4096 Oct 23 04:00 ..
drwxr-xr-x 2 herahadi herahadi 4096 Oct 23 03:53 cgi-bin
-rw-r–r– 1 herahadi herahadi 418 Sep 25 2013 index.php

jika owner dan group nya adalah root maka anda harus menggantinya dengan user anda. caranya jalankan perintah chown seperti dibawah ini

root@domain:~# chown -R herahadi:herahadi /home/herahadi/public_html/

Sudah, sekarang coba akses lagi file atau url yang tadi menghasilkan internal server error 500 tadi, seharusnya sekarang sudah bisa diakses dengan normal.

 

Continue Reading

Cara Remote SSH Ke Server Hosting Namecheap

Berawal dari client India yang memesan jasa saya untuk pindahan hosting 6 website dia ke hosting baru di namecheap. Sebenarnya ini pertama kalinya saya berhubungan dengan hosting namecheap, sebelumnya belum pernah. Setelah login ke cpanel saya lihat namecheap memberikan fitur untuk remote hosting menggunakan fasilitas ssh. Tentu saja saya akan lebih mudah dan cepat pindah hostingnya jika bisa SSH, karena dengan menggunakan SSH saya bisa transfer file dari hosting lama ke hosting baru dengan perintah wget tanpa harus download dulu file di hosting lama kemudian upload ke hosting baru. Cara kuno seperti itu akan sangat memakan waktu mengingat filenya sekitar 2,5G, selain memakan waktu tentu saja memakan bandwidth.

Akhirnya saya coba remote server dengan menggunakan SSH dengan perintah seperti ini:

#ssh username@hosting

biasanya kalau menggunakan hostgator perintah tersebut bisa, tapi kali ini tidak. Agak bingung juga kenapa, setelah dicari-cari ternyata namecheap untuk ssh dia menggunakan port yang tidak biasa yaitu port 21098. Selain menggunakan port yang berbeda namecheap secara default tidak meng-enable fitur ssh ini jadi client harus submit ticket dulu untuk meng-enable kan fitur ssh.

Setelah subit tiket nanti akan ditanyai untuk apa kok pingin di enable fitur ssh nya? aneh kan, fitur yang memang sudah kita bayar kok pakai ditanya mau buat apa fiturnya hehe.. alasan mereka sih karena kurang secure jika ssh di enable. Jika anda ditanya seperti itu jawab saja untuk transfer file dari hosting lama ke hosting baru server to server.

Setelah fitur ssh di enable, sekarang coba login dengan perintah seperti ini:

#ssh -p 21098 username@hosting

taraaaa… sekarang sudah berhasil login ke hosting namecheap menggunakan remote ssh.

Oh ya untuk nama hosting namecheap (server name) bisa anda dapatkan dengan cara login ke cpanel namecheap kemudian pilih “account information” di situ anda akan mendapatkan ip address server anda. Gunakan ip address tersebut untuk login ssh, jadi perintahnya adalah seperti ini ssh username@ip_address

Selamat mencoba remote hosting namecheap menggunakan ssh. Bagi yang ingin pindahan hosting dan butuh jasa pindah hosting silahkan menggunakan jasa saya di sini.

Continue Reading