.htaccess hanya bisa proteksi akses HTTP (browser), bukan proteksi file system (edit/rename/delete via FTP/SSH/cPanel).
Penjelasan Simpel
.htaccess = mengatur akses WEB (HTTP request)
File system = diatur oleh SERVER/OS permission (chmod)Solusi yang Benar
1. Via SSH (Paling Ampuh)
# Buat folder read-only (tidak bisa diedit siapapun)
chmod 444 /path/to/folder
# Atau read-only termasuk semua isi dalamnya
chmod -R 444 /path/to/folder
# Hanya owner yang bisa baca, yang lain tidak bisa akses
chmod 400 /path/to/folder2. Via cPanel File Manager
1. Login cPanel
2. File Manager
3. Klik kanan folder -> Permissions
4. Set permission: 444 atau 555
- 444 = read only semua
- 555 = read + execute (untuk folder lebih aman)Tabel Permission
| Chmod | Owner | Group | Public | Keterangan |
|---|---|---|---|---|
777 | rwx | rwx | rwx | Semua bisa edit ⚠️ |
755 | rwx | r-x | r-x | Normal folder |
555 | r-x | r-x | r-x | Read only folder |
444 | r– | r– | r– | Read only ketat |
400 | r– | Hanya owner bisa baca |
.htaccess Bisa Apa Saja?
# Larang akses browse isi folder
Options -Indexes
# Larang akses ke folder tertentu via browser
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^folder-rahasia/ - [F,L]
</IfModule>
# Larang akses berdasarkan IP
<Directory "/path/to/folder">
Order Deny,Allow
Deny from all
Allow from 192.168.1.1 # hanya IP ini yang boleh
</Directory>
# Larang akses file tertentu
<Files "config.php">
Order Allow,Deny
Deny from all
</Files>Rekomendasi Kombinasi
chmod 555 pada folder → tidak bisa diedit via FTP/SSH
+
.htaccess Options -Indexes → tidak bisa dibrowse via web
= Folder aman dari dua sisiCatatan: Jika pakai shared hosting tanpa SSH, gunakan cPanel File Manager untuk set permission. Hasilnya sama dengan chmod via SSH.
Permission Read-Only
# Untuk FOLDER
chmod 555 /path/to/folder
# Untuk FILE di dalamnya
chmod 444 /path/to/files
# Sekaligus folder + semua isi dalamnya
chmod -R 555 /path/to/folderKenapa 555 untuk Folder?
5 = r-x = read + execute
Execute pada folder = izin untuk MASUK ke folder
Tanpa execute, folder tidak bisa dibuka meski bisa dibaca| Owner | Group | Public | |
|---|---|---|---|
| 555 | r-x | r-x | r-x |
| Bisa baca? | ✅ | ✅ | ✅ |
| Bisa edit? | ❌ | ❌ | ❌ |
| Bisa masuk folder? | ✅ | ✅ | ✅ |
Jika Ingin Lebih Ketat (Hanya Owner Bisa Baca)
chmod 544 /path/to/folder| Owner | Group | Public | |
|---|---|---|---|
| 544 | r-x | r– | r– |
| Bisa baca? | ✅ | ✅ | ✅ |
| Bisa edit? | ❌ | ❌ | ❌ |
| Bisa masuk folder? | ✅ | ❌ | ❌ |
Via cPanel (Tanpa SSH)
File Manager -> Klik kanan folder -> Permissions
Centang:
✅ Read (Owner, Group, World)
❌ Write (Owner, Group, World) <- hapus centang ini
✅ Execute (Owner, Group, World)
Hasil = 555Jangan lupa centang “Recurse into subdirectories” supaya semua file di dalamnya ikut berubah