wp

Cara Membuat WordPress Menggunakan HTTPS (SSL) Redirect dari HTTP

Awalnya saya cuek blog ini tidak diberi https, saya biarkan saja apa adanya menggunakan http. Toh, ini hanya sekadar blog pribadi saya yang tak ada sangkut pautnya dengan multi akun atau pertukaran data. Sejak awal 2015 saya bertanya-tanya pada diri sendiri, “kenapa akhir-akhir ini banyak website yang saya cari di google banyak menggunakan https? Bahkan blog yang gratis semacam wordpress.com saja pada semua sub-domainnya menggunakan https?”. Lagi-lagi saya cuek dengan hal itu, karena menganggap agar pengguna di WP.com tersebut aman dari serangan hacker.

Diawali dari pembuatan bot di Telegram (artikel mengenai bot ini sedang saya tulis) yang menggunakan metode webhook, mewajibkan menggunakan https dan tentu karena blog ini sudah menggunakan VPS, saya tinggal buatkan saja sertifikat SSL nya menggunakan bawaan dari OpenSSL yakni sertifikat Apache. Namun disatu sisi karena saya ingin membuatkan domain ini menggunakan CDN maka saya daftarkan ke CloudFlare yang tentu pula gratis SSL Comodo, Anda bisa lihat sendiri berikut screenshotnya:

comodo-sslJika Anda menggunakan shared-hosting, pastikan Anda memiliki sertifikat SSL nya agar situs Anda bisa menggunakan https. Anda bisa membeli atau pula mendapatkan gratisan dari CloudFlare. Bicara mengenai SSL saya uraikan sedikit kegunaan SSL tersebut.

Uraian Singkat Mengenai SSL

Saya ambil copas berdasarkan dari artikel di https://www.dedoho.pw/ssl-certificates/ :

SSL Certificates atau dalam bahasa Indonesia diartikan Sertifikat Lapisan Soket Aman adalah protokol dari pihak ketiga yang dikeluarkan oleh Otoritas Sertifikat/Certificate Authority (CA) yang menyediakan saluran komunikasi aman terenkripsi di Internet antara web server dan browser untuk hal-hal seperti penjelajahan web, email, pesan instan, dan transfer data lainnya.

Manfaat menggunakan Sertifikat SSL

  • Melindungi pengguna website Anda dan informasi sensitif mereka
    Jika pengguna Anda mengakses website Anda di sambungan Internet yang tidak aman, ditempat seperti wi-fi publik atau jaringan yang tidak dienkripsi, akun pengguna Anda mungkin lebih rentan dibajak. Sambungan internet yang aman mampu mencegah pembajakan dengan melindungi sesi cookie. Pembajakan sesi cookie adalah situasi ketika penipu mendapatkan hak akses yang tidak sah ke cookie pengguna Anda dan merebut kontrol dari sesi yang sah saat sesi tersebut masih berlangsung.
  • Meningkatkan kepercayaan dan keyakinan pengguna website Anda
    Dengan kemampuan Anda memberikan keamanan bagi pengguna website Anda, hal ini tentu saja meningkatkan kepercayaan pengguna sehingga website Anda mempunyai nilai lebih dimata pengguna dibandingkan website kompetitor yang tidak mampu memberikan fasilitas seperti yang Anda berikan.
    Ketika Anda kepercayaan pengguna telah Anda dapatkan, tentu saja hal ini dapat meminimalisir kehilangan pelanggan sehingga transaksi website Anda akan lebih meningkat dari sebelumnya.
  • Mendapatkan prioritas dari mesin pencarian Google
    Melalu blog resminya pada bulan Agustus 2014, Google merilis artikel yang berjudul “HTTPS as a ranking signal” yang menyatakan bahwa penggunaan Sertifikat SSL pada sebuah website telah dimasukkan sebagai salah satu dari sekian banyak faktor penentu peringkat website di mesin pencariannya.

Untuk lebih lengkap mengenai SSL ini saya tidak akan menuliskan di sini Anda bisa membacanya ditautan yang saya berikan di atas.

Menjadikan WP Menggunakan HTTPS

  1. Masuk ke WP Admin Anda ganti Address URL dan Site URL yang semula menggunakan http ganti menjadi https.https-situsali
  2. Edit .htaccess seperti kode di bawah ini agar otomatis redirect dari http ke https.
    # BEGIN HTTPS Redirection
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    </IfModule>
    # END HTTPS Redirection
    
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
  3. Masuk ke PhpMyAdmin atau MySQL/MariaDB Anda dan lakukan perubahan pada isi database WP Anda (NB: Pastikan Anda membackupnya terlebih dahulu).
    Replace post_content

    UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://domainAnda', 'https://domainAnda')

    Dan juga replace guid

    UPDATE wp_posts SET guid = REPLACE(guid, 'http://domainAnda', 'https://domainAnda')

    Catatan : Pastikan wp_posts sesuai dengan table di database WP Anda.

  4. Tambahkan skrip berikut pada wp-config.php
    define('FORCE_SSL_ADMIN', true);
    define('FORCE_SSL_LOGIN', true);
     if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
         {$_SERVER['HTTPS']='on';}

Tahap Testing

Pastikan semua konten berjalan sebagaimana sebelumnya Anda menggunakan http, karena perbuhan https mengakibatkan perubahan seluruh konten di WP oleh karena itu teslah terlebih dahulu. Terutama bagian wp-admin / wp-login. Jika Anda sudah bisa login artinya WP Anda sudah 100% bisa menggunakan https. Jika belum coba Anda ikuti lagi langkah-langkah di atas.

Kesimpulan

Menggunakan https dapat melindungi website Anda dari serangan hacker, karena dengan adanya https ini cookies Anda telah terenkrip hingga menjadikan website Anda aman. Selain aman dengan https ini menjadikan website kita terprioritas oleh mesin pencarian google sekaligus meningkatkan kepercayaan dan keyakinan pengguna. Perlu adanya sedikit modifikasi WP agar dapat redirect ke https. Anda harus memodifikasi wp-config.php, .htaccess dan merubah isi konten dalam database.

Artikel Terkait

22 responses to “Cara Membuat WordPress Menggunakan HTTPS (SSL) Redirect dari HTTP”

  1. anonim Avatar
    anonim

    waw, masang ssl sampe perlu mainin isi db wordpress juga?

    1. Ali Avatar
      Ali

      Iya kang, karena WP ini di dalam konten ada yang menyertakan link seperti gambar, itu otomatis http. Karena awalnya juga http, jadi agar memastikan tidak terjadi redirect ke halaman utama, maka perlu direplace isi db tersebut kang 🙂

  2. dunia Avatar

    Bagian yang sulit dimengerti, coba tolong dijelaskan lebih detail mas,
    Masuk ke PhpMyAdmin atau MySQL/MariaDB Anda dan lakukan perubahan pada isi database WP Anda (NB: Pastikan Anda membackupnya terlebih dahulu).
    Replace post_content

    (lakukan perubahan pada isi database WP Anda) itu dimana ya?

    1. Ali Avatar
      Ali

      Kalau mau mudah bisa pakai phpMyAdmin untuk mengeksusi itu. Kira kira seperti video berikut:

  3. ragazenta Avatar

    Step-step register SSL dong om?

    1. Ali Avatar
      Ali

      Wew, ntar om.. ane tulis 😀 pake CloudFlare yg gampang om 😀

      1. Andre Syahidu Avatar

        Ane tunggu ya om 😀

  4. Santri Drajat Avatar

    Bukanya kalau pakai SSL itu berbayar ?

    1. Ali Avatar
      Ali

      Ada yang gratis seperti Let’s Encrypt atau CloudFlare. Atau bisa juga bisa bikin sendiri (self-signed) tinggal dibuat dengan OpenSSL.

  5. van Avatar
    van

    mas untuk guid itu letaknya dimana ya? tolong disertakan screenshootnya

    1. Ali Avatar
      Ali

      itu di phpMyAdmin masuk ke SQL.

  6. Ramdziana Avatar

    Makasih om Ali, saya ngikutin tutorial ini. Pakai Let’s Encrypt dari hostingan, si Kabar Linux akhirnya ber-HTTPS. ?

    1. Ali Avatar
      Ali

      Sip deh mantap… ??

  7. hadiwibowo110882860bowo Avatar

    punya saya baru sampe nomer 2 mas. Karena bertrafik, jadi belum berani melangkah ke nomer 3 dan 4 😀
    pengen coba nanti untuk web baru 🙂
    terima kasih tutornya 🙂

  8. Bang Nasrul Avatar

    terus cara mengembalikan ke http gmn ya?

    1. Ali Avatar

      sama caranya, tinggal ganti https jadi http, juga redirectnya hilangkan

  9. Kunci Gitar Avatar

    Thanks banget mas ahirnya bisa juga setelah sedikit puyeng tadinya hehe
    https://www.kuncigitar.co.id/ (sorry mas bukan bermaksud SP*M ya cuma mau kasih contohnya)

    buat tambahan untuk cek yang belum valid https nya bisa di cek pake ini ya https://www.whynopadlock.com/

    Sisa satu yang belum selesai nih, lewat PhpMyAdmin gak bisa, MariaDB di hosting gak ada

  10. Bahaya Vapor Avatar

    Bingung gan, kalo kita gak daftar SSL bisa gak rubah ke https..? mohon jawabannya

  11. Gorila Nakal Avatar

    Buat Vapor jawabnya tidak bisa. Protokol berubah jd HTTPS harus install SSL dulu yg di dapat dengan membelinya atau berlangganan bayar setiap tahun kemudian install sertifikatnya di server kita atau bisa beli shared hosting dimana sekarang ini penyedia layanan hosting menawarkan SSL satu paket dengan Hosting deh.

  12. Mesin Antrian C2000 Avatar

    Terimakasih atas informasinya dan semoga artikelnya bisa bermanfaat bagi orang lain

  13. arifin Avatar

    nice artikeel , ditunggu updatean2 artikel lainnya

Leave a Reply

Your email address will not be published. Required fields are marked *