Memindahkan Blog WordPress dari HTTP ke HTTPS (SSL)

Halo semua, bagi kalian pengunjung setia website TWOH’s Engineering pasti menyadari kalau sekarang ada icon gembok berwarna hijau muncul di sebelah kiri atas browser. Dan url website ini sekarang juga diawali dengan https://. Yup, di tahun 2017 ini saya melakukan beberapa perubahan pada website ini, di antaranya adalah menambahkan SSL certificate ke blog WordPress ini dan pindah rumah. 🙂 Hal ini dilakukan semata-mata agar kalian bisa browsing tutorial-tutorial Android di sini dengan nyaman dan aman.

Pada awalnya ketika ingin memindahkan website ini ke HTTPS, ada beberapa concern yang menjadi kekhawatiran saya, seperti apakah nanti website nya jadi slow loading, masalah indexing di Google, tentang iklan Google Adsense dan sebagainya. Namun ternyata tidak, migrate website wordpress dari HTTP ke HTTPS sangatlah gampang, dan kalian tidak perlu install plugin apapun. Malah bagi kalian yang mempunyai website atau blog berita di WordPress saya sangat sarankan untuk berpindah ke HTTPS, selain jadi semakin aman, website kalian juga tampak lebih reliable dan credible.

icon secure gembok di TWOH’s Engineering

Hanya memang ada beberapa modifikasi yang harus dilakukan pada WordPress untuk menyesuaikan dengan HTTPS yang terpasang. Berikut ini adalah langkah2 yang harus dilakukan ketika kalian ingin migrate WordPress ke HTTPS.

  1. Install SSL Certificate

    Yup pertama-tama kalian harus membuat SSL certificate dulu. Kalian bisa membelinya di Comodo atau penyedia jasa SSL lainnya. Kalian juga bisa mendapatkan SSL certificate gratis di Let’s Encrypt. Atau apabila website kalian menggunakan hosting kelas premium atau business, biasanya hosting tersebut juga sudah menyediakan layanan SSL include di paket hosting.
    Setelah certificate terinstall, kalian bisa mengetest nya dengan mencoba mengakses website dengan menambahkan https:// pada url di browser. Kalian juga mempunyai dua buah pilihan, yaitu tetap memperbolehkan pengunjung mengakses situs lewat HTTP, atau kalian bisa redirect semua HTTP request ke HTTPS secara otomatis. Awalnya browser kalian juga mungkin tidak akan menampilkan icon gembok hijau pada address bar, karena adanya mixed content. Cara memperbaiki mixed content nanti akan dibahas di bawah.

  2. Update WordPress Setting

    Jika langkah 1 sudah selesai, kalian bisa melihat bahwa semua link di website kalian masing menggunakan protokol http://. Untuk memperbaikinya kalian bisa masuk ke Settings -> General Settings pada wp-admin, dan mengupdate value WordPress Address (URL) dan Site Address (URL) ke alamat URL kalian yang sudah ditambah dengan HTTPS. Setelah disave, link-link pada website kalian semuanya akan otomatis menjad HTTPS, dan saat navigasi ke link-link tersebut, kalian akan selalu berada di protokol HTTPS.

  3. Force SSL di WordPress Admin

    WordPress mempunyai fitur untuk hanya memperbolehkan secure access (HTTPS) ke halaman admin (wp-admin). Caranya kalian bisa membuka file wp-config.php dan memasukkan code berikut.

    define('FORCE_SSL_ADMIN', true);
    

    Setelah ditambahkan, kalian akan secara otomatis diredirect dari http:// ke https:// saat mengakses wp-admin. Di langkah nomor 5 kita akan belajar untuk melakukan site-wide redirect dari http ke https

  4. Memperbaiki mixed content warning

    HTTPS mengharuskan bahwa content-content lain yang ditampilkan pada halaman HTTPS harus diserve dari HTTPS juga, sehingga apabila masih ada file CSS, atau JS, atau script Adsense, banner, image atau apapun yang berasal dari konten external yang masih menggunakan HTTP, harus diganti menjadi HTTPS. Untuk ini saya menggantinya secara manual dengan menghilangkan “http:” pada awal request script, sehingga menjadi misalnya “//external.com/javascript.js“. Bisa juga dengan manually mengganti http menjadi https pada url request script tersebut. Namun amannya dengan menghilangkan saja awalan http-nya, sehingga bisa fleksibel mengikuti settingan dari domain situs kita.
    Jika semuanya sudah diperbaiki, maka mixed-content warning akan hilang dan akhirnya icon gembok berwarna hijau akan muncul pada address bar di website kita.

  5. Redirect semua HTTP request ke HTTPS

    Karena sekarang website kalian sudah benar-benar HTTPS compliant (mixed contents warning sudah difix) maka lebih baik kita mengarahkan semua HTTP request ke HTTPS. Sehingga apabila ada orang yang mengakses website kita lewat http://, akan langsung diredirect ke https://. Caranya adalah dengan menambahkan rule berikut di .htaccess :

    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
    

    Rule di atas bekerja dengan simple, yaitu langsung mengganti http di url, dengan https. Sehingga link2 yang masih menggunakan http tidak akan rusak, tapi tetap mendapat security upgrade dengan otomatis redirect ke https.

  6. Upgrade SSL Setting ke HTTP Strict Transport Security

    Tutorial ini adalah bonus dan karena itu opsional, namun sangat direkomendasikan. Kita bisa men-tweak atau mengupgrade SSL setting kita dengan meng-enable HTTP Strict Transport Security. Caranya dengan menambahkan rule berikut ke .htaccess website kalian.

    # Enable HSTS
    Header set Strict-Transport-Security "max-age=31536000; includeSubDomains" env=HTTPS
    

    Dengan meng-enable HSTS, website kalian akan aman dari protocol downgrade attacks dan cookie hijacking, cara kerjanya dengan hanya memperbolehkan web browsers atau user agents lainnya mengakses situs kalian lewat HTTPS.

Itulah langkah-langkah yang harus dilakukan apabila kalian berencana migrate WordPress dari HTTP ke HTTPS. Kelihatannya ribet, namun jika dilakukan simpel kok. 🙂 Jika ada yang ingin ditanyakan, atau kalian punya pengalaman migrasi HTTP ke HTTPS, silahkan ditulis di kolom komentar. Tunggu apalagi ayo rame-rame migrasi ke HTTPS. 😀





Download aplikasi kami di Google Play Store


4 Comments

  1. Sigit Prasetya May 17, 2017
  2. Orang Pangandaran November 3, 2017

Leave a Reply