DOKUMENTASI SETUP
Cloudflare Tunnel + Apache (XAMPP) + PHP Legacy di Windows
Domain: budisetiaji.my.id
Aplikasi: Web Absensi (PHP 7.2 – 7.4)
Metode publikasi: Cloudflare Tunnel
OS: Windows
Status: ✅ PRODUKSI / STABIL
1. Gambaran Arsitektur
Karakteristik setup:
-
❌ Tidak membuka port router
-
❌ Tidak port forwarding
-
✅ Aman di balik NAT / CGNAT
-
✅ HTTPS otomatis dari Cloudflare
-
✅ CMD tidak perlu dibuka
2. Struktur Folder Penting
2.1 Folder aplikasi
Isi utama:
2.2 Folder Cloudflared
2.3 Folder config global (WAJIB untuk service)
3. Konfigurasi Apache (XAMPP)
3.1 DocumentRoot
Apache diarahkan langsung ke folder aplikasi:
File:
Konfigurasi:
📌 Tujuan:
-
Aplikasi berjalan di ROOT domain
-
Tidak ada
/absensidi URL -
.htaccessbekerja penuh
3.2 Apache sebagai Windows Service
-
Apache di-install sebagai service dari XAMPP
-
Status: Running
-
Startup: Automatic
4. Konfigurasi .htaccess (PHP 7.2 – 7.4)
Lokasi:
Isi final (stabil & aman):
📌 Catatan:
-
❌ Tidak ada HTTPS redirect
-
❌ Tidak ada mod_gzip
-
✅ Aman untuk Cloudflare Tunnel
-
✅ Cocok untuk PHP legacy
5. Konfigurasi Cloudflare Tunnel
5.1 File config.yml
Lokasi:
Isi:
5.2 Test manual (diagnostik)
Digunakan hanya untuk testing:
Jika manual jalan → config valid.
6. Menjalankan Tunnel sebagai Windows Service (NSSM)
6.1 Alasan pakai NSSM
-
Cloudflared tidak otomatis menjalankan
tunnel runsebagai service -
NSSM memastikan perintah dijalankan persis seperti manual
-
Stabil & umum dipakai sysadmin Windows
6.2 Install NSSM
Folder:
6.3 Membuat service tunnel
Isian NSSM:
Application
-
Path:
-
Arguments:
-
Startup directory:
Details
-
Display name:
Exit actions
-
On failure: Restart
6.4 Menjalankan service
Stop:
Atau lewat:
📌 Setelah ini:
-
CMD ditutup → website tetap hidup
-
Reboot Windows → tunnel otomatis aktif
7. Service yang Aktif
| Service | Fungsi |
|---|---|
| Apache2.4 | Web server |
| CloudflareTunnelAbsensi | Tunnel publik |
Service cloudflared bawaan dinonaktifkan (tidak dipakai).
8. Error yang Pernah Terjadi & Solusi
Error 1033
Penyebab: Tunnel agent tidak berjalan
Solusi: Jalankan tunnel via NSSM sebagai Windows Service
Service start abu-abu
Penyebab: Config ada di folder user
Solusi: Pindahkan ke C:\ProgramData\Cloudflare\cloudflared
9. Operasional Harian
Start / Stop Tunnel
Restart Tunnel
10. Checklist Akhir (Validasi)
-
Website bisa diakses via HTTPS
-
CMD ditutup → website tetap hidup
-
Reboot Windows → website tetap online
-
Tidak ada Error 1033
-
Tidak ada port forwarding
11. Catatan Penting
-
Setup ini aman untuk aplikasi legacy
-
Cocok untuk:
-
Server lokal
-
Lab
-
Produksi skala kecil–menengah
-
-
Cloudflare menangani:
-
HTTPS
-
DDoS protection
-
DNS
-
12. Status Akhir
🟢 SETUP SELESAI & STABIL
🟢 LAYAK PRODUKSI
🟢 TIDAK TERGANTUNG CMD