Keselamatan Struktur Folder WordPress bermula dengan menutup akses terus ke folder "wp-includes" secara bijak: bukan menyekat keseluruhan folder secara membabi buta, tetapi menghalang fail PHP dalam folder ini daripada dijalankan dari luar dan mematikan listing direktori. Ini kerana wp-includes menyimpan fail JavaScript, CSS dan fail statik penting untuk operasi WordPress – menutup akses sepenuhnya boleh merosakkan reka bentuk laman, editor atau fungsi plugin. Pendekatan terbaik: jika guna Apache, setkan aturan .htaccess; jika Nginx, tambah aturan location dalam server block untuk sekat akses PHP; kemudian sahkan dengan jawapan 403/404 dan ujian kritikal laman.
Kesilapan utama dalam keselamatan WordPress ialah hanya berpuas hati dengan kata laluan kuat atau plugin keselamatan. Hakikatnya, penyerang lazim mengimbas folder teras, plugin lama, permission fail yang salah dan listing direktori terbuka. Folder wp-includes juga sasaran utama. Dalam panduan ini, anda akan pelajari langkah-langkah praktik untuk hadkan akses wp-includes, aturan yang boleh rosakkan laman, contoh konfigurasi Apache dan Nginx, kaedah ujian serta senarai semak penyelenggaraan. Untuk hosting WordPress yang lebih selamat, anda boleh pertimbangkan Hosting WordPress dan lapisan perlindungan SSL melalui Sijil SSL.
Apakah wp-includes dan Mengapa Ia Perlu Dilindungi?
wp-includes ialah folder utama yang menempatkan perpustakaan teras WordPress. Sistem tema, editor blok, komponen REST API, pemprosesan media, kelas, fungsi dan pelbagai fail JavaScript semuanya berada di sini. Ringkasnya, wp-includes adalah “enjin” WordPress; ia bukan folder yang perlu diakses pelawat secara langsung.
Pengguna biasa tidak perlu buka site.com/wp-includes/. Namun, dalam kod sumber halaman, kadangkala fail statik dari wp-includes akan kelihatan – contohnya fail script, emoji script atau komponen editor. Jadi, perlindungan yang betul ialah: tutup akses PHP secara langsung tanpa menyekat fail statik yang diperlukan.
Perbezaan ini penting dalam Keselamatan Struktur Folder WordPress secara profesional. Menutup folder secara rawak mungkin nampak selamat, tetapi boleh menyebabkan masalah seperti halaman putih, panel admin rosak, editor blok tidak berfungsi atau tema bercelaru. Matlamatnya: lindungi fail perlu, kurangkan permukaan serangan.
Apa Faedah Tutup Akses wp-includes?
Menyekat PHP dari dijalankan secara langsung dalam wp-includes tidak bermakna semua serangan akan berhenti, namun ia mengurangkan risiko secara signifikan. Pada laman yang dijangkiti malware, penyerang cuba muat naik fail PHP berbahaya ke folder yang boleh diakses atau panggil fail sedia ada. Melarang akses PHP wp-includes dari web menjadi tembok tambahan.
Langkah ini memberi kelebihan:
- Menghadkan panggilan fail PHP teras melalui URL.
- Membantu elak paparan isi folder jika listing direktori terbuka.
- Mengurangkan kebocoran maklumat kepada bot automatik.
- Memberi perlindungan pada aras server walau tanpa plugin keselamatan.
- Memperkuat keselamatan berlapis bersama WAF, SSL, PHP terkini dan permission fail betul.
Ingat, ini cuma satu lapisan keselamatan. Jika plugin tidak dikemas kini, kata laluan admin lemah atau akaun FTP terdedah, aturan wp-includes sahaja tidak cukup. Keselamatan ialah gabungan platform hosting, aplikasi, pengurusan pengguna dan penyelenggaraan konsisten. Untuk asas selamat, rujuk Hosting Web Selamat dan bagi perlindungan domain, Keselamatan Domain.
Kesilapan Lazim Ketika Menutup Akses wp-includes
Menyekat seluruh folder
Kesilapan utama: sekat semua permintaan HTTP ke wp-includes dengan kod 403. Nampak logik, tetapi WordPress memuatkan fail statik penting dari folder ini – editor blok mungkin gagal dibuka, fail JavaScript tidak dimuatkan, atau reka bentuk akan rosak.
Menerapkan aturan tanpa ujian
Kesilapan satu karakter dalam .htaccess atau konfigurasi Nginx boleh menyebabkan 500 Internal Server Error. Jangan terus aktifkan aturan tanpa simpan backup dan uji di staging dahulu. Jika hosting anda menyokong staging atau backup, gunakan Pembuangan Penyimpanan Web sebagai rujukan dalaman.
Terlalu bergantung pada plugin keselamatan
Plugin keselamatan sangat membantu; tetapi aturan server seperti .htaccess atau Nginx lebih efektif kerana permintaan disekat sebelum sampai ke PHP. Walau guna plugin, jangan abaikan aturan server.
Senarai Semak Sebelum Implementasi
Sebelum hadkan akses wp-includes, buat persiapan ringkas untuk kurangkan risiko gangguan. Senarai semak ini sangat disarankan untuk laman WordPress aktif:
- Backup .htaccess atau konfigurasi Nginx semasa.
- Kemas kini teras WordPress, tema dan plugin.
- Pastikan versi PHP yang digunakan selamat dan disokong.
- Periksa permission fail: folder selalunya 755, fail 644.
- Jangan biarkan permission menulis terbuka pada wp-config.php atau .htaccess.
- Jika guna cache, CDN atau plugin keselamatan, rancang untuk bersihkan cache selepas perubahan.
- Buat senarai ujian untuk panel admin, homepage, halaman post, borang kontak dan pembayaran.
Persiapan ini hanya ambil masa 10-15 minit, tetapi boleh elak gangguan berjam-jam akibat aturan salah. Untuk laman korporat, lakukan perubahan waktu trafik rendah.
Menutup Akses PHP wp-includes di Apache menggunakan .htaccess
Pada hosting Apache, kaedah paling mudah ialah melalui .htaccess di folder root WordPress. Tambah aturan berikut dan backup fail sebelum edit:
Aturan .htaccess yang disyorkan
Aturan ini fokus menyekat akses PHP secara langsung dalam wp-includes tanpa mengganggu fail statik:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^wp-includes/.*[.]php$ - [F,L]
</IfModule>
Logiknya: jika URL bermula dengan wp-includes dan berakhir dengan .php, permintaan akan disekat. Fail .js, .css, .png, .svg dan lain-lain masih boleh diakses. Ini memastikan frontend dan admin WordPress berjalan lancar.
Matikan listing direktori
Untuk elak isi folder dipapar, tambah baris berikut pada .htaccess:
Options -Indexes
Ini menghalang paparan senarai fail pada folder tanpa index. Kebanyakan hosting moden sudah matikan secara lalai, tapi sebaiknya periksa.
Ujian selepas perubahan
Selepas tambah aturan:
- Buka siteanda.com/wp-includes/ – tiada senarai folder harus dipapar.
- Cuba panggil fail PHP dalam wp-includes secara langsung – dapatkan 403 atau 404.
- Periksa homepage, post, dan panel admin.
- Guna browser developer tools (Console/Network) untuk semak error 403/404 pada sumber.
- Jika guna cache/CDN, bersihkan cache.
Jika semua ujian lepas, aturan boleh terus digunakan. Jika dapat error 500, keluarkan aturan baru dan pulihkan backup .htaccess dengan segera.
Menutup Akses PHP wp-includes di Nginx
Untuk VPS, dedicated atau hosting Nginx, .htaccess tidak digunakan. Aturan perlu ditambah dalam site configuration (server block). Anda perlukan akses SSH dan keizinan edit fail konfigurasi. Jika kurang pasti, dapatkan bantuan teknikal hosting.
Aturan location Nginx yang disyorkan
Implementasi mudah:
location ~* ^/wp-includes/.*[.]php$ {
deny all;
}
Aturan ini sekat semua permintaan PHP ke wp-includes. Selepas edit, uji konfigurasi:
nginx -t
Jika tiada error, reload Nginx dengan:
systemctl reload nginx
Reload lebih selamat berbanding restart kerana tidak memutuskan sambungan aktif. Untuk laman penting, lakukan perubahan waktu trafik rendah.
Perkara penting pada Nginx
- Pastikan aturan dimasukkan dalam server block yang betul – satu server boleh ada banyak site.
- Jika guna CDN atau reverse proxy, uji selepas bersihkan cache CDN.
- Pastikan PHP-FPM hanya proses fail yang diperlukan.
- Semak access.log dan error.log untuk pengesanan cepat masalah.
Salah aturan location boleh menyebabkan konflik dengan permalink WordPress dan blok PHP. Periksa supaya aturan tidak bertindih.
Perbandingan Kaedah Perlindungan
Jadual berikut ringkaskan kaedah utama hadkan akses wp-includes:
| Kaedah | Platform | Kelebihan | Kekurangan |
|---|---|---|---|
| Aturan .htaccess | Apache & LiteSpeed hosting | Pantas, mudah diterapkan pada hosting shared | Salah sintaks boleh sebabkan error 500 |
| Aturan location Nginx | VPS, dedicated, managed server | Kuat dan berprestasi tinggi di aras server | Perlu SSH dan pengetahuan konfigurasi |
| Plugin keselamatan | Pengguna tanpa teknikal | Mudah urus dari dashboard | Aturan tidak semestinya efek di server level |
| WAF & CDN | Laman trafik tinggi, sasaran serangan | Tapis bot, brute force awal | Aturan salah boleh sekat pengguna sebenar |
| Permission fail | Semua laman WordPress | Asas keselamatan fail | Tidak tutup akses URL secara langsung |
Gabungan kaedah beri hasil terbaik. Contohnya, hosting Apache dengan aturan .htaccess, permission fail betul, WordPress terkini, SSL dan backup berkala membentuk perlindungan berlapis. Untuk laman korporat, firewall dan isolasi hosting juga penting – pilih Hosting Korporat untuk perbezaan ketara.
Permission Fail & Ownership
Tutup akses wp-includes tidak cukup jika permission fail salah. Standard WordPress: folder pada 755, fail pada 644. Ini benarkan server baca fail tanpa permission menulis yang berlebihan. Pada hosting tertentu, struktur user/group mungkin berbeza – ikut saranan panel hosting.
Permission 777 sangat berisiko – sesiapa sahaja boleh muat naik fail berbahaya. Untuk wp-content/uploads yang perlu boleh tulis, pastikan fail PHP tetap disekat. wp-includes biasanya tidak boleh ditulis kecuali semasa update WordPress.
Semak permission berikut:
- Folder wp-includes: selalunya 755
- Fail PHP dalam wp-includes: biasanya 644
- wp-config.php: 600 jika boleh, atau value lebih ketat mengikut hosting
- .htaccess: biasanya 644, tiada permission menulis selepas edit
Setiap server mungkin berbeza. Permission salah boleh halang update atau akses fail. Selepas ubah, semak status WordPress dan log error.
Adakah Plugin Keselamatan Melaksanakan Langkah Ini?
Plugin seperti Wordfence, iThemes Security menawarkan aturan hardening secara automatik. Plugin ini berguna untuk brute force, pemantauan perubahan fail, scan malware dan keselamatan login. Namun, periksa jika plugin tutup akses wp-includes secara efektif.
Sesetengah plugin tambah aturan .htaccess secara automatik. Ada pula hanya sekat di level aplikasi. Perlindungan aplikasi mula selepas request sampai ke WordPress, jadi lebih lambat berbanding aturan server. Gabungkan plugin dengan konfigurasi server untuk perlindungan optimum.
Jika guna plugin keselamatan, semak:
- Adakah plugin tambah aturan .htaccess/Nginx?
- Pastikan tiada dua aturan serupa bercanggah.
- Selepas update plugin, pastikan setting keselamatan tidak berubah.
- Monitor cache dan sumber server untuk impak prestasi.
Jangan guna banyak plugin keselamatan serentak – aturan firewall, login dan rewrite yang bertindih boleh menjejaskan prestasi atau menyebabkan sekatan salah.
Ujian Perlindungan wp-includes: Senario Praktikal
Untuk sahkan perlindungan, bukan sekadar laman boleh dibuka. Ikuti 7 langkah ujian ini – sesuai untuk laman SME hingga e-commerce:
- 1. Buka homepage dalam incognito dan periksa jika imej atau layout rosak.
- 2. Lawati post blog, page kategori dan result carian.
- 3. Login wp-admin; buka editor blok dan media library.
- 4. Guna browser developer tools – semak Console untuk error.
- 5. Pastikan fail statik dalam wp-includes tidak disekat dalam Network tab.
- 6. Cuba akses fail PHP dalam wp-includes secara langsung – dapatkan 403/404.
- 7. Semak log error server untuk error baru atau berulang.
Ujian ini hanya ambil 5 minit dan boleh kesan konfigurasi salah dengan cepat. Untuk WooCommerce, uji page cart, pembayaran dan akaun pengguna juga. Error kecil pada fail JavaScript boleh menjejaskan conversion rate laman yang jana pendapatan.
Langkah Tambahan Keselamatan Struktur Folder WordPress
Perlindungan wp-includes ialah permulaan; tetapi keselamatan WordPress perlu holistic. Langkah tambahan berikut boleh kurangkan permukaan serangan:
- Jangan sembunyi versi WordPress – pastikan teras sentiasa dikemas kini.
- Padam tema dan plugin tidak digunakan.
- Gunakan nama admin sukar diteka.
- Aktifkan 2FA pada login admin.
- Jika tidak perlu XML-RPC, tutup akses.
- Rate-limit atau tambah pengesahan pada wp-login.php.
- Backup automatik dan test restore setiap hari.
- Aktifkan HTTPS seluruh laman – SSL wajib untuk data login dan transaksi.
SSL tidak menutup akses wp-includes secara langsung, tetapi melindungi sesi pengguna, borang dan trafik admin. SSL perlu jadi lapisan utama dalam panduan keselamatan WordPress. Gunakan Beli sijil SSL dan Pemasangan SSL Percuma sebagai rujukan dalam artikel.
Bila Perlu Dapatkan Sokongan Profesional?
Tambah aturan .htaccess pada hosting Apache biasanya mudah. Namun, konfigurasi Nginx, laman multisite, WooCommerce, portal berita trafik tinggi atau laman korporat – lebih baik dapatkan bantuan profesional. Aturan keselamatan mesti betul secara teknikal dan tidak jejaskan operasi perniagaan.
Dapatkan bantuan pakar jika:
- Hostingkan lebih satu laman WordPress pada server yang sama.
- Guna Nginx, Varnish, CDN dan WAF serentak.
- Selepas perubahan, error 403, 404 atau 500 meningkat.
- Laman pernah dijangkiti malware sebelum ini.
- Operasi pembayaran, keahlian atau pemprosesan data peribadi.
Alat hosting selamat, isolasi betul, backup berkala dan sokongan pakar ialah teras keselamatan WordPress yang sering diabaikan. Pilih hosting bukan sekadar ruang disk; pastikan backup, firewall, sokongan versi PHP, pengurusan SSL dan kualiti bantuan teknikal. Hostragons Pakej Hosting dan Pemindahan Laman WordPress sangat berguna untuk pembaca.
Kesimpulan
Dalam Keselamatan Struktur Folder WordPress, cara terbaik tutup akses wp-includes bukan sekat seluruh folder tetapi hadkan akses PHP secara langsung dan matikan listing direktori. Aturan .htaccess untuk Apache dan location untuk Nginx boleh diterapkan pantas, tetapi backup dan ujian selepas perubahan wajib dilakukan.
Ringkasnya: jangan rosakkan fail statik, sekat akses PHP, matikan listing folder, semak permission fail dan sentiasa kemas kini. Untuk WordPress yang lebih selamat dan mudah diurus, lihat solusi hosting, domain dan SSL dari Hostragons – dapatkan bantuan untuk konfigurasi sesuai dengan keperluan anda.
Soalan Lazim
Adakah tutup sepenuhnya wp-includes selamat?
Tidak digalakkan. wp-includes menyimpan fail JavaScript, CSS dan statik penting untuk WordPress. Menyekat seluruh folder boleh jejaskan paparan laman dan panel admin. Pendekatan terbaik: sekat akses PHP secara langsung sahaja.
Jika tambah aturan .htaccess dan dapat error 500, apa patut saya buat?
Buang aturan baru atau pulihkan backup .htaccess. Semak syntax aturan. Jika masih bermasalah, rujuk log error hosting atau dapatkan bantuan teknikal.
Adakah .htaccess berfungsi di Nginx?
Tidak. .htaccess hanya untuk Apache & LiteSpeed. Di Nginx, sekatan serupa dibuat melalui aturan location dalam server block. Selepas edit, uji dengan nginx -t.
Adakah langkah ini buat laman WordPress saya 100% selamat?
Tidak. Menutup akses PHP wp-includes ialah satu lapisan penting, tetapi tidak mencukupi. Kemas kini, kata laluan kuat, 2FA, SSL, backup, firewall dan permission fail juga perlu dilaksanakan bersama-sama.
Jika guna plugin keselamatan, perlu tambah aturan wp-includes juga?
Bergantung pada plugin. Ada plugin tambah aturan .htaccess, ada yang sekat di level aplikasi sahaja. Sekatan server biasanya lebih kuat dan disyorkan tanpa konflik antara aturan.