Cara Install WordPress di VPS Tanpa Panel Dengan NGINX Debian 9 – Final

Setelah kita sukses membuat persiapan awal untuk install wordpress di VPS Unmanaged tanpa panel pada tahap 1 kemarin, sekarang tibalah saatnya untuk menginstall wordpressnya. Bagi Anda yang belum membuat persiapan awal tersebut, silahkan ikuti link berikut ini ==> Install WordPress Di VPS linux Debian 9.7 Tahap 1: LEMP(Nginx, MariaDB, PHP7.0-FPM, PHPMyAdmin)

Ohya, jika Anda belum melakukan setup DNS server, maka lakukanlah sekarang ini sebelum memulai setup instalasi wordpressnya. Caranya bisa dilihat di artikel ini ==> Cara Setting DNS Server Untuk VPS Unmanaged Digital Ocean

Ini adalah setup tahap akhir dan yang paling mudah karena kemungkinan error yang terjadi tidak akan berakibat fatal dan terlalu bikin puyeng, beda saat kita mempersiapkan paket software untuk membangun web server yaitu LEMP sebelumnya. Meskipun begitu, ketelitian masih tetap diperlukan agar semua berjalan lancar dan tak banyak membuang waktu.

Hal ini tak berbeda jauh seperti kita pada saat menginstall wordpress di localhost karena kita saat ini sudah memiliki IP sebagai localhost dan phpMyadmin sebagi database setup-nya dan webserver Nginx dan lain-lain yang sudah kita buat sebelumnya.

Oke mari kita lanjutkan, biar sedikit rileks jangan lupa seruput kopinya dulu 🙂

Tahap Final Cara Install WordPress Di VPS Unmanaged Server Debian 9 dengan Nginx Sebagai Webserver Plus phpMyadmin

1 Setup Direktori Untuk WordPress

Pertamakali kita harus mempersiapkan direktorinya dulu, dimana nanti kita akan menyimpan file-file wordpressnya. Banyak pendapat mengatakan bahwa tempat terbaik dalam susunan hirarki linux untuk meletakkan file website adalah direktori /srv/. Namun kebanyakan orang menyimpannya di direktori /var/ atau /home.

Baiklah, dalam tutorial ini saya akan menggunakan direktori /srv/ untuk menginstall wordpress, yang merupakan direktori standar dari linux. Perintah linux yang akan kita gunakan adalah mkdir yaitu command line untuk membuat direktori baru yaitu di /srv/www/spiderbeat.com/(jangan lupa ganti dengan domain milik Anda):

mkdir -p /srv/www/spiderbeat.com/htdocs

Penjelasan : argumen -p pada perintah diatas adalah untuk membuat directory secara rekursif yaitu membuat direktori htdocs didalam direktori spiderbeat.com, didalam direktori www, dan didalam direktori srv.

Set-up Nginx (Membuat Server Block/Virtual Host)

Apa itu server block atau virtual host Nginx? ini adalah catatan untuk Nginx supaya bisa mengenali website kita yang “dipanggil” atau diakses untuk kemudian menampilkannya di web browser pengguna. Server block atau virtual host namanya berisi informasi tentang konfigurasi yang kita buat, terutama memberitahu Nginx tentang apa nama domain kita dan dimana letak direktori dari file website disimpan dll. Jadi tanpa server block yang kita buat, maka nginx tidak tahu apa-apa dan website kita tak bisa diakses.

Baiklah mari kita mulai cara setupnya:

Pertama kita harus membuat virtual hostnya, caranya sama seperti ketika kita membuat virtual host untuk phpMyadmin kemarin. Gunakan perintah yang sama, lakukan berurutan perbaris :

cd /etc/nginx/sites-available/
touch spiderbeat.conf

Sebenarnya tidak harus menggunakan .conf seperti pada contoh, karena linux bisa mengenali file tidak berdasarkan sufix seperti windows. Bisa juga Anda menggunakan .com atau tanpa ekstensi misalnya hanya spiderbeat saja. Sekarang Anda sudah memiliki virtual host yang masih kosong, enter perintah ls -a untuk melihat file tersebut lalu kemudian edit menggunakan nano seperti biasa yaitu perintahnya:

nano spiderbeat.conf

Masukkan script berikut yang merupakan adaptasi dari script virtual host bawaan yaitu yang sudah ada di file /etc/nginx/sites-available/default, yang kita sesuaikan adalah terutama konfigurasi letak root domain dan server_name yaitu bisa nama domain yang kita pakai atau IP Adress VPS, cekidot :

server {
listen 80;
#listen [::]:80 ipv6only=on default_server;
server_name spiderbeat.com www.spiderbeat.com 111.222.333.444;
root /srv/www/spiderbeat.com/htdocs;
if ($http_host != "www.spiderbeat.com") {
rewrite ^ http://www.spiderbeat.com$request_uri permanent;
}
index index.php index.html;

location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}

# Deny all attempts to access hidden files such as .htaccess, .htpasswd, .DS_Store (Mac).
location ~ /\. {
deny all;
access_log off;
log_not_found off;
}
location / {
try_files $uri $uri/ /index.php?$args;
}

# Pass PHP scripts on to PHP-FPM
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

}

Keterangan :

  • listen 80 adalah port untuk ipv4
  • server_name adalah nama domain yang kita gunakan untuk wordpress kita dan Ip address tidak harus dimasukan kecuali Anda ingin mengakses wordpress menggunakan IP adress.
  • root adalah lokasi direktori dimana wordpress kita simpan.

Khusus untuk konfigurasi seperti diatas, maka setiap akses domain wordpress Anda yang tanpa embel-embel www, maka akan diredirect ke www. Jika Anda menginginkan domain Anda tidak menggunakan www, maka edit script diatas pada bagian berikut :

if ($http_host != "www.spiderbeat.com") {
rewrite ^ http://www.spiderbeat.com$request_uri permanent;

Menjadi

if ($http_host != "spiderbeat.com") {
rewrite ^ http://spiderbeat.com$request_uri permanent;

Jika sudah selesai, silahkan disimpan seperti biasa CTRL+X Y, enter.

Lalu restart nginx seperti biasa dengan perintah

systemctl restart nginx.service

Jika ada ada error, bisa dipastikan Anda salah dalam mengcopy script virtual host diatas maka cek sekali lagi. Saya jamin script diatas sudah saya uji, tidak ada error 🙂

Catatan : Diatas adalah konfigurasi stadard untuk port 80. Jadi jika ingin menambahkan/mengganti dengan port 443 SSL(untuk website https) , maka kita masih harus menyesuaikan lagi dengan script dan konfigurasi SSL. (Nanti akan saya buat juga turorial SSL untuk VPS Unmanaged secara tersendiri biar nggak puyeng). Konfigurasi Vhost lainnya nati bisa bermacam-macam sesuai dengan kebutuhan juga. Tapi ini saja dulu ya? seruput dulu kopinya. 🙂

Proses Instalasi WordPress

Lakukan beberapa perintah berikut secara berurutan, dimulai dari membuka direktori dimana wordpress akan kita install yang sudah Anda buat sebelumnya yaitu /srv/www/spiderbeat.com/htdocs – pastikan tidak salah tempat :

cd /srv/www/spiderbeat.com/htdocs
wget http://wordpress.org/latest.tar.gz
tar -zxvf latest.tar.gz
cp -rvf wordpress/* .
rm -R wordpress
rm latest.tar.gz

Keterangan :

  • cdadalah perintah untuk pindah direktori
  • wget adalah pertintah untuk mendownload wordpress dari situs wordpress.org
  • tar -zxvf adalah  petintah untuk mengekstrak paket tar.gz
  • cp -rvf wordpress/* . adalah perintah untuk mengcopy semua file wordpress secara rekrusif
  • rm adalah perintah untuk remove atau menghapus, dimana file tersebut sudah tidak diperlukan lagi karena sudah dicopy.

Saat ini jika Anda mengakses alamat domain atau IP address, maka yang tampil hanyalah halaman default dari nginx. Tau masalahnya kenapa? karena Anda belum membuat simbolik link dari virtual hostnya, karena tanpa simbolik link (symlink) nginx belum tahu keberadaannya 🙂 . Jadi beritahu Nginx dengan membuatkan simbolik linknya dari virtual host yang sudah Anda buat sebelumnya dengan perintah :

ln -s /etc/nginx/sites-available/spiderbeat.conf /etc/nginx/sites-enabled/spiderbeat.conf

Sekarang restart Nginx dengan perintah :

systemctl restart nginx.service

Buatlah hak akses untuk direktori dimana worpdress yang sudah Anda simpan sebelumnya supaya bisa diakses web browser dengan perintah

chown -R www-data:www-data /srv/www/spiderbeat.com/htdocs

Sampai disini Anda sudah hampir selesai dalam menginstal wordpress di VPS Unmanaged tanpa panel Nginx Debian 9. Hanya yang Anda perlu lakukan sekali lagi sekarang adalah membuat databasenya, supaya wordpress bisa diinstall sesuai dengan langkah setup wizard yang ada.

Lihat Juga :  Apa yang disebut dengan web hosting

Membuat database di phpMyadmin

Sekarang silakan login kedalam phpMyadmin, dan buatlah database dan usernamenya.
1. Klik databases
Membuat database
2. Buat database dengan memasukkan nama databasenya, dengan nama sesuka Anda asalkan mudah diingat, lalu klik simpan; seperti gambar berikut:
Membuat database 2
3. Buat user untuk database

Klik (1)privileges ==>(2)Add user account

4. Lanjutkan dengan cara mengisi field yang ada untuk membuat user database, lalu pada bagian bawah check all pada global privileges. Lalu klik tombol go pada bagian paling bawah kanan(maaf dalam gambar tidak tercakup screen shoot).

Lakukan persis seperti gambar berikut dibawah, buat user dan password yang kuat (bisa menggunakan fitur generate password). Jangan lupa buatlah file txt dikomputer untuk mencatat nama database, user, dan passwordnya, nanti akan ditanyakan saat setup wordpressnya.

5. Selesai membuat database dan user, saatnya kita menginstall worpdress hingga online dan siap untuk posting artikel pertama, menginstall theme atau plugin plugin yang diperlukan.

Akses nama domain Anda jika sudah terhubung antara nama domain dan VPS atas peran serta DNS Server yang sudah Anda lakukan sebelumnya. Dan Anda akan mendapati arahan dari wordpress sebelum menjalankan setup wizard.

Jika database, username, dan password sudah Anda buat dan persiapkan di file txt maka sekarang mulai lakukan setup dengan klik tombol Let’s Go!

Install wordpress VPS unmanaged server Nginx debian

 

6. Sekarang masukkan informasi nama database, username, dan password. Biarkan saja localhost sebagai database host.  Untuk table prefik bawaan wordpress adalah wp_ , Anda bisa mengganti sesuka hati tapi jangan panjang-panjang cukup 2 atau 3 huruf saja dan diakhiri dengan tanda underscore “_” dibelakang, misalnya spd_. Lalu pencet tombol submit

Install wordpress diVPS Nginx debian 9 2

7. Sekarang wordpress sudah mengonfirmasi database yang sudah Anda masukkan dalam setup tadi. Tanpa perlu ragu lagi, sekarang jalankan Run the installation

Install wordpress VPS nginx debian 9 8

8. Selamat Anda berhasil menjalankan setup wordpress di VPS unmanaged debian 9! 

Sekarang Anda hanya tinggal memasukkan informasi yang dibutuhkan untuk blog wordpress Anda yang sudah berhasil Anda setup instalasinya. Langung saya berikan title sesuai dengan blog Anda, tambahkan username untuk login(tak harus pakai nama Admin, bisa pilih nama user yang lain), dan membuat password untuk login ke wordpress. Jangan lupa disimpan password dan usernamenya di txt !. Sekarang jalankan proses instalasi dengan meng-klik tombol Install WordPress.

Install wordpress di VPS Nginx debian 9 5

9. Setelah selesai proses install WordPress,selanjutnya Anda diminta untuk login sebagai admin ke dashboard WordPress yang baru saja selesai Anda install. Selamat! Blog wordpress Anda sudah jadi, yang berjalan di webserver Nginx VPS unmanaged tanpa panel. Silahkan melakukan tugas Anda sebagai Admin dari blog Anda, menginstall theme yang bagus, menginstall plugin, hingga posting untuk yang pertama kali.

Cara install wordpress nginx debian 9 final

PENTING! Setup tambahan

Sekarang yang Anda butuhkan adalah melakukan konfigurasi tambahan untuk web server NGINX Anda. Pada saat ini, upload file yang diijinkan masih dibatasi(terbatas), untuk itu Anda harus sedikit merubah konfigurasi nginx dan php.ini. Jika dibiarkan saja seperti default, nantinya Anda tidak akan bisa mengupload file database melebihi 2M misalnya ketika melakukan impor database yang berukuran besar melalui phpMyadmin.

1. Mengubah konfigurasi php.ini. Caranya buka file php.ini dengan nano seperti biasa dengan perintah :

nano /etc/php/7.0/fpm/php.ini

Temukan dengan mudah code upload_max_filesize dengan nano, caranya pakai tombol Ctrl+W lalu pastekan code tersebut pada search bar yang muncul dibawah jendela nano.

**Info: Cara copas : block/sorot yang mau dicopas seperti biasa, lalu tekan Ctrl+C. Untuk mempastekan di konsol linux melalui putty, cukup klik kanan pada area yang diinginkan)

install wordpress di VPS edit max file size

Secara default upload_max_filesize = 2M , ganti dengan yang lebih besar misalnya 20M atau 50M.

Simpan sepertri biasa dengan cara Ctrl+X Y enter. Lalu

2. Tak hanya php.ini saja yang perlu Anda ubah konfigurasi batasan file uploadnya, Anda juga harus mengubah konfigurasi nginx.conf. Tapi untuk kali ini bukan mengubah, tapi menambahkan satu baris code. Buka nginx.conf dengan nano seperti biasa :

nano /etc/nginx/nginx.conf

Kemudian tambahkan code berikut dibawah pada set http block yang nanti akan berpengaruh kepada semua server block. Code yang perlu Anda tambahkan adalah :

client_max_body_size 20M;

Lebih jelasnya lihat gambar :

Setting nginx conf

Catatan: JIka di php.ini diberi nilai 20M maka di nginx.conf juga harus diberi nilai yang sama yaitu 20M juga. Anda bisa lebih dari 20M asalkan sama keduanya.

3. Langkah terakhir adalah merestart nginx service seperti piasa dan juga service php-fpm-nya

systemctl restart nginx.service

systemctl restart php7.0-fpm.service

Cara menambahkan lebih banyak domain atau sub-domain pada VPS Unmanaged Webserver Nginx

Caranya sangat mudah, Anda cukup mengulangi cara-cara diatas. Misalnya Anda ingin menambahkan domain baru misalnya newdomain.com, maka bualah directory baru untuk menyimpan file website untuk domain newdomain.com di directory /srv/www/. Jangan lupa diatur owner juga untuk directory newdomain.com supaya bisa diakses lewat webbrowser.

Selanjutnya Anda juga harus menambahkan server blocknya yaitu di directory /etc/nginx/sites-available serta membuat symlinknya juga seperti cara-cara diatas. Atau Anda juga bisa tanpa membuat fille untuk server block domain baru, tapi cukup dengan cara meletakkan konfigurasi server block untuk newdomain.com tepat di bawah konfigurasi serverblock domain yang pertama pada file server block yang sudah dibuat;  contoh dalam kasus tutorial ini adalah difile spiderbeat.conf.

Anda bisa menambahkan berapapun domain asalkan VPS-nya mampu 🙂

Bagaimana jika menambahkan subdomain?

Caranya sama saja dengan menambahkan domain baru pada tutorial diatas, hanya saja Anda harus menambahkan konfigurasi subdomainnya di DNS server yaitu dengan menambahkan CNAME record untuk subdomain tersebut. Misalnya buatlah CNAME, lalu field/kolom hostname disi dengan nama subdomain yang diinginkan misalnya blog dan Alias namenya diisi dg FQDN atau tanda @ atau nama domain utama misalnya spiderbeat.com. Maka nanti hasilnya adalah sebuah subdomain blog.spiderbeat.com. Subdomain itu nanti dibuatkan server blocknya dengan server_name disi blog.spiderbeat.com

Demikian final dari tutorial dari cara install wordpress di VPS unmanaged tanpa panel Debian 9 dengan webserver Nginx lengkap, semua pasti bisa nggak harus pakar dalam dunia IT. Untuk selanjutnya saya akan berbagi bagaimana membuat protokol SSL atau HTTPS untuk domain yang ada di VPS non-panel, setup email forwarder, dll sesuai dengan kebutuhan pokok untuk ngeblog di wordpress; jadi untuk itu rajinlah menengok ke mari ya 🙂

Leave a Reply