Fix: tambah instruksi untuk jalankan backend dengan router.php

This commit is contained in:
mwpn
2025-12-19 05:26:28 +07:00
parent 801ea1bfcd
commit 3490012ac0
2 changed files with 112 additions and 1 deletions

View File

@@ -34,12 +34,21 @@ http://localhost/index.html
### Opsi 3: Gunakan PHP Built-in Server
**Frontend:**
```bash
cd "C:\laragon\www\RETRIBUSI_BAPENDA\retribusi (frontend)\public"
php -S localhost:8080
```
Akses: `http://localhost:8080/index.html`
**Backend API (PENTING - harus dengan router.php):**
```bash
cd "C:\laragon\www\RETRIBUSI_BAPENDA\api-btekno\public"
php -S localhost:8000 router.php
```
**Akses:**
- Frontend: `http://localhost:8080/index.html`
- Backend API: `http://localhost:8000` (dengan router.php)
## Konfigurasi API

102
SETUP_LOCAL_FIX.md Normal file
View File

@@ -0,0 +1,102 @@
# Fix: Failed to fetch di Localhost
## Masalah
Error: "Failed to fetch" saat mengakses `http://localhost:8080/`
Backend API error:
```
[404]: OPTIONS /auth/v1/login - No such file or directory
```
## Penyebab
PHP built-in server dijalankan **TANPA router.php**, sehingga routing tidak bekerja.
## Solusi
### 1. Jalankan Backend API dengan Router
**SALAH** (yang menyebabkan error):
```bash
cd api-btekno
php -S localhost:8000
```
**BENAR** (yang harus dilakukan):
```bash
cd api-btekno/public
php -S localhost:8000 router.php
```
File `router.php` diperlukan untuk handle routing seperti `/auth/v1/login`.
### 2. Jalankan Frontend
```bash
cd "retribusi (frontend)/public"
php -S localhost:8080
```
### 3. Test Backend API
Buka browser dan akses:
```
http://localhost:8000/health
```
Harusnya return: `{"status":"ok","time":...}`
Jika masih 404, berarti router.php tidak bekerja.
### 4. Cek Config Frontend
File `public/dashboard/js/config.js` harus return:
```javascript
return 'http://localhost:8000';
```
## Quick Start Script
Buat file `start-local.bat` di root project:
```batch
@echo off
echo Starting Backend API...
start "Backend API" cmd /k "cd api-btekno\public && php -S localhost:8000 router.php"
timeout /t 2
echo Starting Frontend...
start "Frontend" cmd /k "cd retribusi (frontend)\public && php -S localhost:8080"
echo.
echo Backend API: http://localhost:8000
echo Frontend: http://localhost:8080
echo.
pause
```
Jalankan `start-local.bat` untuk start kedua server sekaligus.
## Troubleshooting
### Masih 404 di Backend?
1. Pastikan menjalankan dari folder `api-btekno/public`
2. Pastikan menggunakan `router.php`: `php -S localhost:8000 router.php`
3. Cek file `router.php` ada di `api-btekno/public/router.php`
### Masih "Failed to fetch"?
1. Buka browser console (F12)
2. Cek log `[API] Request:` - pastikan URL benar
3. Test backend langsung: `curl http://localhost:8000/health`
4. Cek CORS - pastikan backend allow origin `http://localhost:8080`
### CORS Error?
Backend sudah ada CORS middleware, tapi pastikan:
1. Backend running dengan router.php
2. CORS middleware sudah di-register di `public/index.php`