antond.net

0 %
Anton Darmawanto
Front-end Developer
Ui/UX Designer
  • Residence:
    Indonesia
  • City:
    Jakarta Selatan
  • Age:
    40
Indonesian
English
Jawa
html
CSS
Js
PHP
WordPress
Proxmox
Laravel
Linux server (ubuntu, debian, fedora)
Alibaba Cloud
  • Proxmox, Vm Ware
  • Stylus, Sass, Less
  • Gulp, Webpack, Grunt
  • GIT knowledge
0

No products in the cart.

Return To Shop

Cara Nonaktifkan WP-Cron dan Ganti dengan Cron Server di cPanel: Hemat Resource, Jadwal Lebih Andal

05/11/2026

Setiap kali ada pengunjung membuka website WordPress Anda, ada proses tersembunyi yang ikut berjalan di latar belakang: wp-cron.php. File ini menjalankan semua tugas terjadwal WordPress — dari pengecekan update plugin, pengiriman email notifikasi WooCommerce, hingga proses backup otomatis.

Kedengarannya normal. Tapi ada masalah yang jarang diketahui pemilik website: wp-cron.php berjalan setiap kali ada pageview, bukan pada interval waktu yang tetap. Kalau website Anda ramai, proses ini berjalan ratusan atau bahkan ribuan kali sehari — memboroskan resource hosting yang terbatas.

Konfigurasi baris perintah Cron Jobs pada dashboard cPanel
Konfigurasi baris perintah Cron Jobs pada dashboard cPanel

Mengapa WP-Cron Default Bermasalah?

WordPress sengaja merancang sistem ini karena tidak bisa mengandalkan cron server (yang butuh akses shell). Tapi di era hosting cPanel modern, kita bisa melakukan keduanya dengan lebih baik.

Masalah nyata wp-cron default:

  • Pemborosan resource: Setiap pageview memicu PHP process baru. Pada shared hosting, ini memperlambat website saat resource penuh.
  • Jadwal tidak konsisten: Jika website Anda sepi pengunjung malam hari, backup terjadwal jam 02:00 WIB mungkin tidak akan berjalan — karena tidak ada pengunjung yang memicu wp-cron.
  • Celah keamanan: File wp-cron.php dapat dipicu secara publik dari URL https://websiteanda.com/wp-cron.php. Penyerang bisa membanjiri server dengan permintaan ini untuk membebani server (DoS sederhana).
  • Konflik dengan plugin berat: Plugin backup seperti UpdraftPlus atau plugin WooCommerce yang punya banyak tugas terjadwal bisa saling tumpang tindih jika semuanya dipicu oleh pageview.

Solusi: Nonaktifkan WP-Cron, Ganti dengan Cron Server

Solusi terbukti: matikan wp-cron dari pageview, lalu buat cron job nyata di server melalui cPanel yang berjalan tepat waktu.

Langkah 1: Buat Cron Job di cPanel Terlebih Dahulu

Penting: Buat cron server dulu sebelum menonaktifkan wp-cron. Jika urutan terbalik, tugas terjadwal WordPress berhenti tanpa pemberitahuan.

  • Login ke cPanel
  • Di bagian Advanced, klik Cron Jobs
  • Di bagian Add New Cron Job, atur jadwal:
  • Common Settings: pilih Every 15 Minutes (atau sesuaikan)
  • Isi kolom Command:
wget -q -O - https://websiteanda.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1

Ganti websiteanda.com dengan domain Anda yang sebenarnya.

  • Klik Add New Cron Job
Penonaktifan WP-Cron bawaan di file wp-config.php
Penonaktifan WP-Cron bawaan di file wp-config.php

Catatan untuk multisite atau subdomain: Jika WordPress diinstall di subdirektori (misalnya websiteanda.com/toko), sesuaikan URL-nya: “bash wget -q -O - https://websiteanda.com/toko/wp-cron.php?doing_wp_cron >/dev/null 2>&1 “

Langkah 2: Nonaktifkan WP-Cron di wp-config.php

  • Di cPanel, buka File Manager
  • Navigasi ke folder public_html (atau folder WordPress Anda)
  • Klik kanan wp-config.php → Edit
  • Temukan baris ini:
/* That's all, stop editing! Happy publishing. */
  • Tambahkan baris berikut tepat di atas baris tersebut:
define('DISABLE_WP_CRON', true);
  • Simpan file

Langkah 3: Verifikasi

Tunggu 15 menit setelah setup selesai, lalu cek apakah cron berjalan:

  • Buka wp-admin → Tools → Site Health → Info → WordPress Constants
  • Pastikan DISABLE_WP_CRON bernilai true
  • Periksa apakah jadwal terjadwal di wp-admin → Tools → Scheduled Events (jika menggunakan plugin WP Crontrol) masih terdaftar
SituasiSolusi
Website ramai (di atas 500 visitor/hari)Wajib: nonaktifkan wp-cron, ganti cron server
Website sepi (di bawah 100 visitor/hari)Opsional: cron server lebih andal untuk jadwal malam
WooCommerce aktifWajib: banyak job terjadwal butuh waktu tepat
Plugin backup berjalanWajib: cegah backup konflik atau terlewat

Manfaat yang Langsung Terasa

Setelah beralih ke cron server, beberapa hal yang biasanya langsung membaik:

  • Performa website: PHP process tidak lagi diciptakan setiap pageview untuk tugas background
  • Backup berjalan tepat waktu: Bahkan di jam sepi pengunjung
  • Email WooCommerce terkirim konsisten: Notifikasi order, reminder keranjang terbengkalai (abandoned cart) berjalan di jadwal nyata
  • Keamanan meningkat: Akses publik ke wp-cron.php tidak lagi berguna karena WordPress mengabaikannya dari browser
Peningkatan efisiensi resource server dan eksekusi background
Peningkatan efisiensi resource server dan eksekusi background

Tips Tambahan: Blokir Akses Langsung ke wp-cron.php

Setelah cron diganti, blokir akses publik ke file wp-cron.php via .htaccess:

# Blokir akses langsung ke wp-cron.php
<Files "wp-cron.php">
  Order Allow,Deny
  Deny from all
  Allow from 127.0.0.1
</Files>

Ini mencegah penyalahgunaan file tersebut dari luar, sementara server sendiri masih bisa menjalankannya melalui cron job internal.

—

Pengaturan teknis seperti ini kecil di permukaan tapi berdampak besar pada stabilitas dan performa website bisnis jangka panjang. Jika Anda membutuhkan audit atau konfigurasi WordPress untuk bisnis Anda, antond.net menyediakan layanan konsultasi dan pemeliharaan web — hubungi kami untuk diskusi teknis gratis.

Posted in Tutorial, WordPressTags: