Ketika pertama kali membuka File Manager di cPanel, salah satu folder yang paling sering ditemui adalah public_html.
Bagi pemula, nama folder ini mungkin terlihat seperti folder biasa. Padahal pada banyak konfigurasi hosting, public_html berperan sebagai document root untuk domain utama.
Artinya, file yang ditempatkan di dalamnya dapat menjadi bagian dari website yang diakses melalui browser.
Apa Itu public_html?
public_html adalah folder pada hosting yang umumnya digunakan sebagai lokasi file website yang dapat diakses melalui domain utama.
Contoh struktur:
public_html/
├── index.html
├── style.css
├── script.js
└── images/
└── logo.webp
Jika domain sudah diarahkan ke hosting tersebut, file di dalam document root dapat disajikan oleh web server.
Apa Itu Document Root?
Document root adalah folder dasar yang digunakan web server untuk sebuah domain atau subdomain.
Jika document root sebuah domain adalah:
/public_html
maka request ke domain utama akan mencari resource di dalam lokasi tersebut.
Perlu diingat bahwa tidak semua domain pada akun hosting harus memakai folder yang sama. Addon domain dan subdomain dapat memiliki document root sendiri.
Hubungan Domain dan public_html
Misalnya domain:
example.com
menggunakan public_html sebagai document root.
Jika terdapat file:
public_html/index.html
maka halaman tersebut dapat menjadi halaman awal saat domain dibuka, tergantung konfigurasi web server.
Kenapa Ada Kata public?
Kata public menunjukkan bahwa folder ini digunakan untuk konten yang memang disajikan melalui web.
Karena itu, jangan menganggap semua file aman diletakkan di sana.
File yang berisi backup, password, konfigurasi rahasia, database dump, atau catatan internal tidak seharusnya dibiarkan dapat diakses publik.
File index.html dan index.php
Web server biasanya memiliki daftar nama file yang dianggap sebagai halaman awal direktori.
Dua nama yang sangat umum adalah:
index.html
index.php
Untuk website statis, index.html sering menjadi halaman utama.
Untuk website PHP, index.php sering digunakan sebagai entry point.
Contoh Struktur Website HTML
public_html/
├── index.html
├── tentang.html
├── kontak.html
├── css/
│ └── style.css
├── js/
│ └── script.js
└── images/
└── hero.webp
Dengan struktur seperti ini, file CSS dapat dipanggil dari halaman menggunakan:
<link rel="stylesheet" href="css/style.css">
dan JavaScript:
<script src="js/script.js" defer></script>
Contoh Struktur Website PHP
public_html/
├── index.php
├── artikel.php
├── includes/
│ ├── header.php
│ └── footer.php
├── assets/
│ ├── css/
│ └── js/
└── uploads/
Pada project nyata, struktur dapat jauh lebih kompleks. Yang penting adalah memahami file mana yang menjadi bagian publik website dan bagaimana web server mengaksesnya.
Apakah Semua File di Hosting Harus Masuk public_html?
Tidak.
Akun hosting biasanya memiliki berbagai folder untuk kebutuhan sistem, email, log, konfigurasi, atau data lain.
Hanya file yang memang perlu disajikan sebagai bagian website yang seharusnya berada di lokasi publik.
Add-on Domain dan Subdomain
Jika satu akun hosting memiliki beberapa domain, setiap domain dapat menggunakan document root yang berbeda.
Contoh:
public_html/
public_html/blog/
public_html/toko/
Namun struktur sebenarnya bergantung pada konfigurasi hosting.
Karena itu, sebelum memindahkan file, lihat pengaturan domain di cPanel dan pastikan document root yang dipakai.
Apa yang Terjadi Jika File Berada di Folder Salah?
Misalnya domain utama memakai public_html, tetapi file website berada di:
public_html/project-baru/index.html
Jika tidak ada konfigurasi lain, file tersebut kemungkinan akan diakses melalui path seperti:
example.com/project-baru/
bukan dari homepage utama.
Folder public_html Kosong
Jika public_html kosong, domain dapat menampilkan halaman default, error, directory listing yang dibatasi server, atau respons lain sesuai konfigurasi hosting.
Untuk website baru, unggah file project ke document root yang benar lalu pastikan file index tersedia.
Permission File dan Folder
File dan folder di server memiliki permission.
Permission menentukan siapa yang dapat membaca, menulis, atau menjalankan sebuah file.
Jangan mengubah permission menjadi terlalu terbuka tanpa alasan. Jika website mengalami masalah permission, gunakan nilai yang direkomendasikan penyedia hosting atau konfigurasi aplikasi.
Peran .htaccess
Pada server Apache atau lingkungan yang mendukungnya, file .htaccess dapat digunakan untuk berbagai konfigurasi, misalnya rewrite URL dan redirect.
Contoh struktur:
public_html/
├── .htaccess
├── index.php
└── ...
Kesalahan sintaks pada .htaccess dapat menyebabkan error server. Karena itu, buat backup sebelum melakukan perubahan.
File Tersembunyi di File Manager
File yang diawali tanda titik, seperti:
.htaccess
.user.ini
dapat dianggap sebagai hidden file.
Jika tidak terlihat, File Manager biasanya memiliki pengaturan untuk menampilkan hidden files.
Jangan Menaruh Backup di Folder Publik
File seperti berikut sebaiknya tidak dibiarkan di document root tanpa perlindungan:
backup.zip
database.sql
project-old.zip
config-backup.php
Selain memenuhi penyimpanan, file tersebut berpotensi membocorkan source code atau data sensitif jika dapat diakses melalui web.
Upload Folder atau Isi Folder?
Untuk domain utama, kesalahan umum adalah mengupload folder project utuh sehingga terjadi satu tingkat folder tambahan.
Jika tujuannya adalah homepage domain, biasanya isi project perlu berada langsung di document root.
Bandingkan:
public_html/
└── project/
└── index.html
dengan:
public_html/
└── index.html
Pilih struktur berdasarkan URL yang memang diinginkan.
public_html Bukan Tempat Eksperimen Sembarangan
Jika website sudah live, perubahan pada file di public_html dapat langsung memengaruhi pengunjung.
Sebelum mengganti file penting:
- Buat backup yang aman.
- Pastikan file yang diedit benar-benar file live.
- Uji perubahan.
- Hindari menghapus file yang belum dipahami.
Kesalahan Umum Pemula
- Mengupload project ke folder yang salah.
- File index berada terlalu dalam.
- Menghapus
.htaccesstanpa memahami fungsinya. - Membiarkan backup ZIP di folder publik.
- Mengubah permission secara berlebihan.
- Menimpa file konfigurasi produksi dengan konfigurasi lokal.
Checklist public_html
- Document root domain sudah benar.
- File index tersedia.
- Path asset sesuai struktur folder.
- Backup sensitif tidak berada di lokasi publik.
- File konfigurasi penting tidak terekspos.
- Website diuji setelah perubahan.
Kesimpulan
public_html adalah salah satu folder terpenting ketika mengelola website melalui cPanel. Pada banyak hosting, folder ini menjadi document root domain utama dan menjadi tempat file website publik.
Pahami struktur folder sebelum mengupload, memindahkan, atau menghapus file. Dengan memahami document root, banyak masalah seperti website tidak tampil, CSS tidak terbaca, dan file index tidak ditemukan akan lebih mudah ditelusuri.
Setelah memahami public_html, langkah berikutnya adalah mempelajari cara mengaktifkan SSL dan HTTPS agar website dapat menggunakan koneksi terenkripsi.
Artikel berikutnya untuk kamu
Belum ada rekomendasi lain.
Artikel berikutnya
Cara Menjalankan PHP di Hosting cPanel →