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"
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:
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:
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
- Login ke akun cPanel akun hosting Anda.
- Cari dan klik menu Select PHP Version atau PHP Selector (biasanya berada di kelompok menu Software).
Langkah 2: Buka Tab Options
- Pada bagian atas halaman PHP Selector, pastikan versi PHP yang aktif adalah versi yang direkomendasikan (misalnya PHP 8.1, 8.2, atau 8.3).
- Klik tab Options (bersebelahan dengan tab Extensions).
Langkah 3: Hapus curl_exec dari Kolom disable_functions
- Gulir ke bawah dan cari baris pengaturan bernama
disable_functions. - Periksa isi kolom teks tersebut.
- Hapus teks
curl_exec,dancurl_multi_exec,dari dalam kotak input.
Contoh isi kolom SEBELUM diedit:
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):
exec,passthru,shell_exec,system,proc_open,popen,parse_ini_file,show_source
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:
- Buka kembali dashboard admin WordPress Anda (
namadomain.com/wp-admin). - 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). - Masukkan kode lisensi resmi WeddingPress Anda yang diambil dari Member Area Resmi WeddingPress.
- Klik tombol "Activate License" (atau Aktivasi Lisensi).
- Selamat! Status lisensi WeddingPress Anda akan langsung berubah menjadi Aktif (Active) dan masa aktif langganan tersinkronisasi otomatis dengan server.
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
- Di cPanel, buka menu MultiPHP INI Editor.
- Pilih mode Editor Mode dan pilih direktori domain Anda.
- Cari baris
disable_functions = ...lalu hapuscurl_execdancurl_multi_exec. - Simpan perubahan.
2. Menggunakan VPS (Nginx / Apache / OpenLiteSpeed)
Buka berkas konfigurasi php.ini utama Anda via terminal SSH:
# Lokasi umum php.ini (contoh PHP 8.2)
nano /etc/php/8.2/fpm/php.ini
Cari baris disable_functions dan sesuaikan nilainya:
; 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:
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_fopenbernilaiOn/ aktif. - [x] Fungsi
curl_execdancurl_multi_exectelah dihapus daridisable_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.