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 ๐
Tabel konten
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 Address 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 ipv4server_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.
Simpan perubahan seperti biasa dengan mengetik 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 ๐
Mengaktifkan Server Block Dan Me-restart NGINX
Sekarang server web wordpress Anda telah memiliki Server Block, dan Anda perlu mengaktifkannya supaya web wordpress Anda bisa diakses memlalui browser dengan cara membuat Symbolic Links(Symlink) dari file server block ke directory sites-enabled
dimana yang akan dibaca saat nginx start.
Lakukan dengan perintah berikut :
ln -s /etc/nginx/sites-available/spiderbeat.conf /etc/nginx/sites-enabled/
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. ๐
Sekarang server block sudah siap dan web siap diakses, tapi Anda belum menginstal wordpressnya. Lanjutkan dengan langkah-langkah selanjutnya! Siap? ๐
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 :
cd
adalah perintah untuk pindah direktoriwget
adalah pertintah untuk mendownload wordpress dari situs wordpress.orgtar -zxvf
adalahย petintah untuk mengekstrak paket tar.gzcp -rvf wordpress/* .
adalah perintah untuk mengcopy semua file wordpress secara rekrusifrm
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.
Membuat database di phpMyadmin
Sekarang silakan login kedalam phpMyadmin, dan buatlah database dan usernamenya.
1. Klik databases
2. Buat database dengan memasukkan nama databasenya, dengan nama sesuka Anda asalkan mudah diingat, lalu klik simpan; seperti gambar berikut:
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!
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
7. Sekarang wordpress sudah mengonfirmasi database yang sudah Anda masukkan dalam setup tadi. Tanpa perlu ragu lagi, sekarang jalankan Run the installation
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.
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.
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)
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 :
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 ๐
Siang mas, ini caranya gimana ya? “Jangan lupa diatur owner juga untuk directory newdomain.com supaya bisa diakses lewat webbrowser” dalam hal buat cara add domain yang kedua? Dan cara pengaturan DNS pada VPSnya juga gimana ya? Terimakasih
Ini mengulang saja seperti saat menginstal folder untuk domain yang pertama, perintah chown seperti ini :
chown -R www-data:www-data /srv/www/domain2.com/htdocs
Apabila file wordpress sudah diinstall