Sudah lama banget saya nggak otak-atik server, terutama untuk setup WordPress. Karena biasanya setelah setup dan nggak ada permasalahan ya nggak akan saya otak-atik lagi, apalagi semua blog utama saya sudah saya serahkan kepada WPOven, sebuah layanan hosting khusus WordPress.
Baru kemarin saya jadi penasaran lagi, ingin belajar hal-hal baru yang berkaitan dengan per-server-an, khususnya untuk setup WordPress. Setelah baca-baca sana-sini, nemu beberapa hal menarik yang bikin saya ingin otak-atik lagi, akhirnya langsung saja eksekusi buat blog pribadi saya ini.
Kali ini saya belajar setup WordPress dengan Ubuntu, NGINX, PHP7.2, Percona dan Brotli.
PHP7.2: Versi terbaru dari PHP yang banyak orang bilang punya peningkatan performa yang cukup signifikan. Silakan baca di sini dan sini. Masih banyak lagi artikel yang menyatakan bahwa memang versi 7.2 ini performanya memang oke.
Percona: Fork dari MySQL, saya juga belum paham betul apa bedanya day efeknya kalau pakai Percona apakah lebih bagus performanya atau nggak. Pengen aja coba pakai Percona. wkwk.
Brotli: Kompresi buatan Google yang diklaim punya kompresi lebih baik daripada gzip yang biasa dipakai saat ini. Ini merupakan module dari NGINX.
Saya nggak detail-detail amat ya nulisnya, ini cuma sebagai catatan pribadi saja, jika kamu ingin lebih jelas silakan buka referensi yang ada di bawah artikel.
Install NGINX plus Brotli
sudo apt-add-repository -y ppa:hda-me/nginx-stablesudo apt-get updatesudo apt-get install brotli nginx nginx-module-brotli
Install PHP7.2 dan ZIP
sudo add-apt-repository ppa:ondrej/phpsudo apt-get updatesudo apt-get install -y zip unzip php7.2-fpm php7.2-mysql php7.2-xml php7.2-gd php7.2-mbstring php7.2-zip php7.2-curl
Install Percona
wget -sc)_all.debdpkg -i percona-release_0.1-4.$(lsb_release -sc)_all.debsudo apt-get updatesudo apt-get install percona-server-server-5.7
Install Letsencrypt
sudo add-apt-repository ppa:certbot/certbotsudo apt-get updatesudo apt-get install python-certbot-nginx
Install WordPress
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.pharchmod +x wp-cli.pharchmod +x wp-cli.phar
Buat konfigurasi buat instalasi WordPressnano ~/.wp-cli/config.yml
Isinya seperti ini
path: /var/www/htmlurl: https://example.comuser: admin
config create:dbuser: yourdbuserdbname: yourdbnamedbprefix: wp_
core install:title: "My Example Site"admin_user: adminadmin_email: admin@example.com
Eksekusi perintah instalasi
sudo wp core downloadsudo wp config create --dbpass="thepasswordtoyourdatabase"udo wp core install --admin_password="agoodadminpassword"
Selanjutnya silakan baca-baca sendiri ya buat setup-nya. 😀
Update hasil tes dari setup yang saya coba kali ini
Spek VPS: Vultr $2.5, Core 1, RAM 512, Storage 20GB lokasi Tokyo.
Plugin optimasi: WP Super Cache, Autoptimize (Minify), Optimus (image compression).



Referensi:
- https://morphatic.com/2016/05/21/super-fast-secure-wordpress-install-on-digitalocean-with-nginx-php7-and-ubuntu-16-04-lts/
- https://nixcp.com/brotli-compression-nginx/
- https://malcont.net/2018/02/self-hosting-wordpress-securely-freebsd-nginx-php72-modsecurity-brotli-lets-encrypt-ssl/
- https://www.percona.com/doc/percona-server/LATEST/installation/apt_repo.html
- https://www.colinodell.com/blog/201711/installing-php-72
- https://gist.github.com/kjprince/9496501
- https://gist.github.com/plentz/6737338
- https://codex.wordpress.org/Hardening_WordPress
Leave a Reply