Pendahuluan

WordPress adalah sebuah situs web gratis dan open source dan blogging yang menggunakan PHP dan MySQL. Dan telah digunakan oleh ratusan ribu pengguna dan memiliki jutaan instalasi. Panduan berikut ini adalah bagaimana cara menginstal wordpress di server Ubuntu dengan full LEMP stack yang harus Anda lakukan secara manual saat Anda tidak memiliki control hostingnya. LEMP atau LNMP stack adalah singkatan dari Linux, Nginx, MySQL dan PHP.

Persyaratan

  1. Client SSH seperti Bitvise atau Putty

  2. Pengetahuan dasar tentang peritah Unix yang umum

  3. Server atau VPS dengan RAM minimal 256MB (openVZ), disarankan 512 MB jika Anda menggunakan KVM atau Xen

  4. Ubuntu 16.04, 32 bit atau 64 bit

Untuk rekomendasi pemilihan penyedia VPS, direkomendasikan Digital Ocean, Atlantic.net atau Ramnode.

Prasyarat

  1. Server Ubuntu

  2. Instalasi full LEMP

  3. Jangan lupa untuk selalu mengganti domain.tld dengan nama domain Anda sendiri dang anti x.x.x.x dengan alamat IP server Anda.

  4. Siapkan Nginx Server Block untuk domain Anda.

  5. Login sebagai root (disarankan : sebagai pengguna lain dengan hak istimewa sudo).

Persiapan Database

Setelah Anda memiliki Ubuntu Server dengan Nginx, PHP7, dan MySQL yang telah terinstal serta Anda telah melakukan Nginx Server Block untuk domain Anda ikuti langkah berikut ini.

1. Jika Anda belum melakukan, login ke server Anda sebagai root atau sebagai pengguna lain dengan hak istimewa root. Pastikan Anda juga menambahkan sudo di depan perintah di bawah ini jika Anda login sebagai sudoer.

2. Sekarang login ke MySQL sebagai user root menggunakan password sebelumnya.

mysql -u root –p

3. Buat database baru menggunakan perintah berikut.

CREATE DATABASE dbname DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Ganti dbname dengan nama database Anda sendiri tetapi pastikan anda mengingatnya atau mencatatnya.

4. Sekarang buat user dan password database baru dengan memberikan akses penuh ke database yang baru dibuat. Ini dapat dilakukan dengan perintah dibawah ini.

GRANT ALL ON dbname.* TO ‘bloguser1’@’localhost’ IDENTIFIED BY ‘servermom12345’;

Ganti bloguser1 dengan nama database Anda dan servermom12345 dengan password Anda. Ingat bahwa Anda tidak boleh menggunakan password yang sama seperti password yang Anda gunakan sebagai password root database.

5. Yang terakhir, refresh database privileges dan keluar dari MySQL.

FLUSH PRIVILEGES;
Exit

Penyesuaian Konfigurasi Nginx

1. Edit Nginx Server Block dari situs Anda yang telah Anda buat tadi.

nano /etc/nginx/sites-available/namadomain

2. Sekarang berikan tanda komentar (#) di depan konfigurasi (try_files $uri $uri/ =404;) dan tambahkan try_files $uri $uri/ /index.php$is_args$args; dibawahnya.
Ini akan memastikan bahwa Anda bisa memanfaatkan permalink permalink WordPress / permalink SEO-friendly.

3. Selanjutnya, Anda mungkin perlu menambahkan baris ini di dalam file Nginx Server Block tersebut. Ini tidak benar-benar diperlukan namun dapat merekayasa performa situs Anda dan mencetak skor Google Page Speed yang lebih baik.

location = /favicon.ico { log_not_found off; access_log off; }
location = /robots.txt { log_not_found off; access_log off; allow all; }
location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
expires max;
log_not_found off;
}

Akhirnya, akan terlihat seperti ini.

Save file (Ctrl+O) lalu keluar dari editor (Ctrl+X).

4. Uji apakah konfigurasi nginx yang telah Anda atur bagus dan kemudian muat ulang nginx.

nginx –t
service nginx reload

5. Sekarang instal modul PHP tambahan yang diperlukan agar WordPress dapat berjalan dengan baik:

apt-get install php-curl php-gd php-mbstring php-mcrypt php-xml php-xmlrpc

jangan lupa untuk menambahkan sudo sebelum perintah diatas jika Anda login sebagai sudoer.

Prosesnya mungkin memakan waktu lama. Tunggu saja sampai selesai.

6. Yang terakhir, restart layanan PHP-fpm

service php7.0-fpm reload

Install WordPress

1. Masuk ke folder /tmp dan download WordPress disitu :

cd /tmpcurl -O https://wordpress.org/latest.tar.gz

2. Ekstrak paket WordPress yang baru didownload.

3. Salin contoh file konfigurasi WordPress dan edit filenya.

cp wordpress/wp-config-sample.php wordpress/wp-config.php
nano wordpress/wp-config.php

4. Sekarang edit detailnya di MySQL Settings.
Sebelum :

Masukkan nama database, username MySQL dan password :

Jangan keluar dari editor terlebih dahulu.

5. Scroll ke bawah halaman sampai Anda melihat bagian Salt. Buka web browser dan buka alamat url dibawah ini:

https://api.wordpress.org/secret-key/1.1/salt/

Anda akan mendapat Salt code random, Copy kan semua

6. Sekarang copy paste kode di file wp-config.php yang sedang Anda edit (hapus kode yang ada dang anti dengan yang baru). Lalu simpan (Ctrl+O) dan keluar dari editor (Ctrl+X).

7. Buat folder baru dengan nama upgrade.

mkdir wordpress/wp-content/upgrade

8. Pindahkan keseluruhan file dan folder WordPress ke dalam folder yang telah Anda buat :

cp -a /tmp/wordpress/* /var/www/domain.tld/html
chown -R www-data:www-data /var/www/domain.tld/html

Ganti domain.tld dengan milik Anda sendiri.

9. Selanjutnya, jalankan perintah berikut baris demi baris untuk mempersiapkan izin file yang tepat.

10. Edit kembali file wp-config.php

nano /var/www/domain.tld/html/wp-config.php

11. Tambahkan baris ini setelah DB_COLLATE :

define(‘FS_METHOD’, ‘direct’);

Langkah tersebut diperlukan untuk menghindari WordPress meminta kredensial FTP saat Anda melakukan perubahan plugin/tema. Simpan perubahan (Ctrl+O) lali keluar dari editor (Ctrl+X).

Lengkapi Instalisasi

1. Buka kembali web browser dan lanjutkan dengan menginstal WordPress.Pilih Bahasa yang Anda inginkan dan klik tombol “continue”.

2. Isi semua rincian dan klik tombol “Install WordPress”.

3. Anda dapat masuk ke blog WordPress yang baru di install. Klik pada tombol Login.Selamat. Anda berhasil menginstal WordPress di server ubuntu anda dengan Nginx, PHP7 fpm dan MYSQL. Ini adalah konfigurasi dasar untuk membuat webserver yang cepat. Anda dapat tetap meningkatkan performa dengan menyesuaikan konfigurasi nginx seperti menambah antara lain caching server-based atau script-based caching.

Apakah Anda menemukan jawaban?