Mengatasi error cURL saat aktivasi lisensi WeddingPress dilakukan dengan menghapus curl_exec dan curl_multi_exec dari daftar disable_functions pada menu PHP Selector → Options di cPanel hosting Anda, sehingga WordPress diizinkan melakukan komunikasi data HTTPS ke server lisensi resmi WeddingPress.


Gejala Masalah: Status Warning cURL di Menu Lisensi

Saat Anda memasukkan kode lisensi resmi WeddingPress pada menu lisensi WordPress (wp-admin), proses verifikasi gagal dan memunculkan kotak notifikasi peringatan berwarna merah:

"Status: Pastikan cURL website Anda aktif dan tidak blockir ip server WeddingPress"

Tampilan Notifikasi Status Error cURL Saat Aktivasi Lisensi WeddingPress
Tampilan Notifikasi Status Error cURL Saat Aktivasi Lisensi WeddingPress

Banyak pengguna mengira masalah ini disebabkan oleh pemblokiran firewall server atau modul cURL belum terpasang. Namun, seringkali ekstensi curl di tab Extensions sudah tercentang aktif, tetapi aktivasi lisensi tetap gagal.


Akar Masalah Teknis (Root Cause)

Penyebab utama dari kegagalan aktivasi ini terjadi karena pembatasan fungsi internal PHP pada tingkat konfigurasi hosting:

MERMAID
flowchart TD
    A[Klik Tombol Activate License] --> B{Apakah curl_exec Diizinkan?}
    B -->|Ya| C[cURL Mengirim Request HTTPS]
    C --> D[Handshake Cloudflare Sukses]
    D --> E[✅ Lisensi Aktif & Tersinkronisasi]
    B -->|Tidak / Terdaftar di disable_functions| F[WordPress Beralih ke stream_socket_client]
    F --> G[Gagal TLS Handshake dengan Cloudflare]
    G --> H[❌ Error: Pastikan cURL Aktif & Tidak Blokir IP]

1. Eksekusi cURL PHP Dimatikan (disable_functions)

Meskipun modul cURL berstatus terpasang di server hosting, jika fungsi curl_exec atau curl_multi_exec dicantumkan di dalam baris pengaman disable_functions, maka PHP akan secara mutlak melarang semua skrip WordPress mengirim koneksi keluar (outbound HTTP request).

Daftar disable_functions bawaan yang sering memicu kendala ini:

TEXT
exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source

2. Fallback WordPress Gagal Melakukan TLS Handshake

Ketika curl_exec diblokir oleh PHP, library koneksi WordPress (WordPress HTTP Transport) terpaksa menggunakan metode cadangan (fallback) berupa fungsi soket lawas stream_socket_client().

Fungsi soket ini seringkali tidak mampu menyelesaikan proses negosiasi keamanan TLS Handshake dengan server Cloudflare yang melindungi infrastruktur lisensi WeddingPress. Akibatnya, koneksi terputus seketika dan memunculkan status pesan error cURL.


Panduan Langkah Demi Langkah Mengatasi Error cURL

Solusi untuk kendala ini sangat mudah dan dapat diselesaikan dalam hitungan menit melalui kontrol panel hosting Anda (seperti cPanel / CloudLinux PHP Selector):

Langkah 1: Login ke Panel Hosting & Buka PHP Selector

  1. Login ke akun cPanel akun hosting Anda.
  2. Cari dan klik menu Select PHP Version atau PHP Selector (biasanya berada di kelompok menu Software).

Langkah 2: Buka Tab Options

  1. Pada bagian atas halaman PHP Selector, pastikan versi PHP yang aktif adalah versi yang direkomendasikan (misalnya PHP 8.1, 8.2, atau 8.3).
  2. Klik tab Options (bersebelahan dengan tab Extensions).
Menu PHP Selector Account Settings Tab Options Kolom disable_functions di cPanel
Menu PHP Selector Account Settings Tab Options Kolom disable_functions di cPanel

Langkah 3: Hapus curl_exec dari Kolom disable_functions

  1. Gulir ke bawah dan cari baris pengaturan bernama disable_functions.
  2. Periksa isi kolom teks tersebut.
  3. Hapus teks curl_exec, dan curl_multi_exec, dari dalam kotak input.

Contoh isi kolom SEBELUM diedit:

TEXT
exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source

Contoh isi kolom SESUDAH diedit (Fungsi cURL Dihapus):

TEXT
exec,passthru,shell_exec,system,proc_open,popen,parse_ini_file,show_source
Anda juga dapat mengosongkan seluruh isi kolom disable_functions jika server hosting Anda mengizinkan konfigurasi fleksibel untuk kebutuhan website undangan digital.

Langkah 4: Pastikan Opsi allow_url_fopen Tetap Aktif

Pada tab Options yang sama, pastikan kotak centang pada opsi allow_url_fopen dalam posisi tercentang (Checked / On). Opsi ini diperlukan oleh WordPress untuk membaca data stream secara aman.

Langkah 5: Simpan Pengaturan

Klik di luar kotak input atau klik tombol Save / Apply di bagian bawah halaman hosting. Pada sebagian besar panel cPanel modern, perubahan teks tersimpan secara instan (auto-saved).


Langkah 6: Aktivasi Ulang Lisensi di WordPress

Setelah konfigurasi PHP di hosting berhasil diperbarui:

  1. Buka kembali dashboard admin WordPress Anda (namadomain.com/wp-admin).
  2. Masuk ke halaman aktivasi lisensi via menu WeddingPress → License di sidebar admin (atau akses URL https://namadomain.com/wp-admin/admin.php?page=weddingpress-license&mode=manually).
  3. Masukkan kode lisensi resmi WeddingPress Anda yang diambil dari Member Area Resmi WeddingPress.
  4. Klik tombol "Activate License" (atau Aktivasi Lisensi).
  5. Selamat! Status lisensi WeddingPress Anda akan langsung berubah menjadi Aktif (Active) dan masa aktif langganan tersinkronisasi otomatis dengan server.
Penting Mengenai Lisensi WeddingPress v4:

Pastikan lisensi diaktifkan langsung di dasbor WordPress situs tujuan Anda. Jangan lupa untuk melakukan Deactivate License terlebih dahulu melalui WP Admin domain lama jika Anda berniat memindahkan lisensi dari situs lama ke situs baru.


Cara Alternatif: Jika Menggunakan VPS atau Panel Lain

Bagi Anda yang menggunakan panel hosting selain cPanel CloudLinux (seperti Hostinger hPanel, DirectAdmin, atau VPS Dedicated):

1. Menggunakan cPanel MultiPHP INI Editor

  1. Di cPanel, buka menu MultiPHP INI Editor.
  2. Pilih mode Editor Mode dan pilih direktori domain Anda.
  3. Cari baris disable_functions = ... lalu hapus curl_exec dan curl_multi_exec.
  4. Simpan perubahan.

2. Menggunakan VPS (Nginx / Apache / OpenLiteSpeed)

Buka berkas konfigurasi php.ini utama Anda via terminal SSH:

BASH
# Lokasi umum php.ini (contoh PHP 8.2)
nano /etc/php/8.2/fpm/php.ini

Cari baris disable_functions dan sesuaikan nilainya:

INI
; Izinkan curl_exec dan curl_multi_exec
disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited
allow_url_fopen = On

Setelah itu, restart layanan PHP-FPM Anda:

BASH
sudo systemctl restart php8.2-fpm
sudo systemctl restart nginx

Checklist Diagnostik Aktivasi Lisensi Vendor

Gunakan daftar periksa berikut untuk memastikan seluruh parameter server siap mendukung ekosistem WeddingPress:

  • [x] Ekstensi cURL, OpenSSL, mbstring, dan JSON aktif di PHP Extensions.
  • [x] Opsi allow_url_fopen bernilai On / aktif.
  • [x] Fungsi curl_exec dan curl_multi_exec telah dihapus dari disable_functions.
  • [x] Versi PHP hosting minimal PHP 7.4 (Sangat direkomendasikan PHP 8.1 - 8.3).
  • [x] IP server atau domain tidak diblokir oleh firewall outgoing port 443 / 80.
  • [x] Kode lisensi disalin secara utuh tanpa spasi tambahan dari weddingpress.net/member-area.

Pertanyaan yang Sering Diajukan (FAQ)

Mengapa muncul pesan 'Pastikan cURL website Anda aktif dan tidak blockir ip server WeddingPress' saat aktivasi lisensi? +
Pesan tersebut muncul karena WordPress gagal melakukan handshake HTTPS ke server validasi WeddingPress akibat fungsi curl_exec atau curl_multi_exec dinonaktifkan di konfigurasi disable_functions hosting Anda, atau koneksi TLS stream socket fallback terblokir.
Mengapa error cURL tetap muncul padahal ekstensi cURL sudah tercentang aktif di cPanel? +
Meskipun modul ekstensi cURL terpasang dan aktif di tab Extensions, jika fungsi eksekusinya (curl_exec) terdaftar di kolom disable_functions pada tab Options, maka PHP akan memblokir seluruh skrip WordPress yang mencoba mengirimkan data keluar.
Apa yang terjadi saat curl_exec dimatikan pada server WordPress? +
WordPress secara otomatis mencoba beralih (fallback) menggunakan fungsi koneksi jaringan alternatif seperti stream_socket_client(). Namun fungsi fallback ini kerap gagal melakukan TLS Handshake dengan server Cloudflare yang melindungi endpoint aktivasi WeddingPress.
Bagaimana cara cepat mengatasi error cURL aktivasi lisensi di cPanel? +
Buka menu Select PHP Version atau PHP Selector di cPanel, pilih tab Options, cari kolom disable_functions, lalu hapus teks curl_exec, dan curl_multi_exec, dari daftar tersebut kemudian simpan perubahan.
Apakah mengaktifkan curl_exec di disable_functions aman untuk website undangan saya? +
Sangat aman dan merupakan standar wajib bagi CMS WordPress modern. Fungsi curl_exec dibutuhkan oleh WordPress core, tema, dan plugin resmi untuk memeriksa pembaruan otomatis, komunikasi API payment gateway, serta validasi lisensi.
Di mana saya bisa mengaktifkan ulang lisensi WeddingPress setelah pengaturan PHP diubah? +
Buka dasbor WordPress Anda, masuk ke menu WeddingPress → License (atau buka tautan wp-admin/admin.php?page=weddingpress-license&mode=manually), lalu klik tombol Activate License.