---
title: "Error 403 Forbidden, Penyebab dan Cara Mengatasinya"
description: "Error 403 Forbidden berarti server menolak akses. Kenali penyebabnya, dari izin file, .htaccess, file index hilang, sampai firewall, dan solusinya."
url: "https://nivelva.com/insight/error-403-forbidden-penyebab-cara-mengatasinya"
category: "Website \u0026 Domain"
tags: ["error 403","forbidden","htaccess","permission","hosting"]
author: "Theresia Candiawan"
published: "2026-11-07T13:59:00+07:00"
updated: "2026-11-07T13:59:00+07:00"
language: "id"
publisher: "Nivelva (https://nivelva.com)"
---

# Error 403 Forbidden, Penyebab dan Cara Mengatasinya

> **Jawaban singkat:** Error 403 Forbidden berarti server memahami permintaan tetapi menolak memberikan akses. Penyebab paling umum adalah izin file atau folder yang salah, aturan penolakan di .htaccess, folder tanpa file index, blokir IP, atau firewall aplikasi web seperti ModSecurity.

Kamu baru selesai mengunggah website, membuka alamatnya, dan yang muncul justru tulisan "403 Forbidden". Atau situs yang kemarin normal tiba-tiba menolak dibuka dari jaringan kantor, padahal dari ponsel lancar. Dua situasi ini terlihat berbeda, tapi kodenya sama: server menolak memberikan akses.

Menurut standar HTTP (RFC 9110), kode 403 berarti server memahami permintaan, tetapi menolak memenuhinya. Berbeda dengan 404 yang berarti halaman tidak ditemukan, pada 403 halamannya mungkin ada, hanya saja kamu tidak diizinkan membukanya. Penyebabnya hampir selalu ada di pengaturan server atau file situs, bukan di browser pengunjung.

## Kenali dulu pola error-nya

Pola kemunculan error memberi petunjuk besar tentang penyebabnya. Error di seluruh situs biasanya mengarah ke izin folder utama atau aturan global di `.htaccess`. Error hanya di satu folder mengarah ke file index yang hilang atau aturan khusus folder itu. Error yang hanya dialami sebagian pengunjung hampir pasti berasal dari blokir IP atau firewall.

| Pola | Penyebab paling mungkin | Cara memeriksa |
|---|---|---|
| Seluruh situs 403 setelah upload | Izin folder atau file salah | Cek izin di File Manager |
| Satu folder 403, folder lain normal | Tidak ada file index | Cek ada tidaknya index.php atau index.html |
| 403 setelah memasang plugin keamanan | Aturan baru di .htaccess | Bandingkan isi .htaccess dengan sebelumnya |
| Hanya IP tertentu yang kena | IP Blocker, firewall, atau WAF CDN | Coba dari jaringan lain, cek daftar blokir |
| 403 saat kirim formulir atau simpan pos | ModSecurity | Cari "ModSecurity" di menu Errors |
| Gambar 403 saat dibuka dari situs lain | Hotlink protection | Cek pengaturan Hotlink Protection |

Cara tercepat memastikan penyebabnya adalah membaca log. Di cPanel, buka **Metrics > Errors** dan cari baris dengan waktu yang sama dengan saat kamu membuka halaman. Panduannya ada di [cara membaca error log di cPanel](https://nivelva.com/insight/cara-membaca-error-log-cpanel-melacak-masalah).

## Izin file dan folder yang salah

Web server butuh izin baca untuk file dan izin masuk untuk folder. Di kebanyakan hosting Linux, pola yang umum dipakai adalah 755 untuk folder dan 644 untuk file. Izin seperti 700 atau 600 pada folder `public_html` atau file di dalamnya bisa membuat server menolak membacanya, hasilnya 403.

Masalah ini sering terjadi setelah mengunggah file dari arsip zip atau memakai klien FTP yang membawa izin dari komputer lokal. Di File Manager cPanel, pilih file atau folder, klik **Permissions**, lalu atur angkanya. Jangan memakai 777 sebagai jalan pintas. Izin itu membuat siapa pun di server bisa menulis ke file, dan banyak server menolak menjalankan skrip PHP dengan izin seperti itu. Penjelasan arti angka izin ada di [memahami permission Linux chmod dan chown](https://nivelva.com/insight/memahami-permission-linux-chmod-chown-bingung).

Pemilik file juga berpengaruh. File yang dipindahkan dari akun lain atau diekstrak oleh root di VPS bisa dimiliki user yang salah, sehingga web server tidak boleh membacanya. Di VPS, periksa dengan `ls -l` lalu betulkan dengan `chown`.

## Aturan .htaccess yang menolak akses

File `.htaccess` bisa berisi aturan yang menolak akses, misalnya:

```
Require all denied
```

atau aturan lama gaya Apache 2.2:

```
Order deny,allow
Deny from all
```

Aturan seperti ini wajar di folder yang memang harus tertutup, tapi jadi masalah bila tertulis di folder utama. Plugin keamanan, plugin cache, atau potongan kode dari tutorial sering menambahkan aturan tanpa kamu sadari. Log Apache untuk kasus ini biasanya berisi `AH01630: client denied by server configuration`.

Cara mengujinya: unduh dulu salinan `.htaccess`, lalu ganti namanya menjadi `.htaccess-lama`. Kalau situs kembali terbuka, masalahnya ada di file itu. Untuk WordPress, buat ulang `.htaccess` bawaan dengan membuka **Settings > Permalinks** lalu klik Save, kemudian tambahkan aturan lain satu per satu.

Perhatikan juga file `.htaccess` di folder induk. Aturan Apache berlaku turun ke subfolder, jadi `.htaccess` di `public_html` bisa memblokir aplikasi di `public_html/toko`, meski folder `toko` sendiri tidak punya aturan penolakan. Kalau ragu, periksa setiap `.htaccess` dari folder yang error naik sampai ke folder utama.

## Folder tanpa file index

Saat kamu membuka alamat folder, server mencari file index seperti `index.php` atau `index.html`. Kalau tidak ada, dan fitur daftar isi folder dimatikan (biasanya memang dimatikan demi keamanan), server menjawab 403. Log mencatatnya sebagai `AH01276: Cannot serve directory`.

Ini sering dialami saat file website terunggah ke subfolder, misalnya `public_html/website-saya/`, padahal domain mengarah ke `public_html`. Pindahkan isi folder ke lokasi yang benar. Langkah upload yang tepat dijelaskan di [cara upload website ke hosting lewat File Manager](https://nivelva.com/insight/cara-upload-website-hosting-lewat-file-manager).

## Kenapa hanya sebagian pengunjung yang kena?

Kalau situs terbuka dari ponsel tapi 403 dari jaringan kantor, kemungkinan besar IP kantor diblokir. Sumbernya bisa beberapa:

- **IP Blocker** di cPanel, yang mungkin pernah diisi rentang IP terlalu luas.
- **Firewall server** yang memblokir IP setelah beberapa kali gagal login, misalnya karena ada perangkat kantor yang terus mencoba password lama di aplikasi email.
- **Firewall aplikasi web** seperti ModSecurity, yang memblokir permintaan yang mirip serangan. Formulir berisi kode atau kata tertentu kadang salah terdeteksi.
- **Aturan keamanan CDN**, bila situs memakai layanan seperti Cloudflare. Halaman blokir dari CDN biasanya punya tampilan dan kode referensi sendiri.

Untuk blokir firewall server dan ModSecurity, kamu biasanya butuh bantuan penyedia hosting. Kirim alamat IP publikmu, waktu kejadian, dan URL yang ditolak, supaya mereka bisa mencari catatan blokirnya. Jangan meminta ModSecurity dimatikan untuk seluruh situs. Lebih aman bila hanya aturan yang salah blokir yang dikecualikan.

Hotlink protection juga bisa memberi 403 pada gambar yang dipanggil dari domain lain, termasuk domain baru milikmu sendiri setelah pindah alamat. Tambahkan domain itu ke daftar yang diizinkan di menu Hotlink Protection.

## Ringkasan

Error 403 berarti server sengaja menolak akses, jadi jawabannya ada di aturan yang dipasang, bukan di koneksi pengunjung. Mulailah dari log untuk melihat alasan penolakan, lalu periksa izin file, isi `.htaccess`, keberadaan file index, dan daftar blokir IP secara berurutan. Ubah satu hal setiap kali dan uji lagi, supaya kamu tahu persis perubahan mana yang memperbaiki masalah.

## Sumber

- <https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden>
- <https://httpd.apache.org/docs/2.4/howto/access.html>

---

Diterbitkan oleh Nivelva Insight (https://nivelva.com/insight/). Artikel ini: https://nivelva.com/insight/error-403-forbidden-penyebab-cara-mengatasinya
Kontak Nivelva: WhatsApp https://wa.me/6285111245007, email hello@nivelva.com
