Apache .htaccess - Benarkan akses folder/halaman hanya dari IP ditetapkan

Terdapat sebuah laman web (Dibina mengunakan Joomla) yang telah telah dibuka capaiannya kepada orang awam. Laman web tersebut sepatutnya menyokong dua bahasa iaitu Bahasa Malaysia dan Bahasa Inggeris namun penyediaan kandungan berbahasa Inggeris masih lagi berjalan.

Memandangkan kandungan berbahasa Inggeris tersebut perlu disahkan dahulu, capaian oleh orang awam perlu dielakkan. Nasib baik juga terdapat perbezaan seperti berikut pada URL mengikut bahasa yang berbeza :-

  • <domain>/lamanutama - Bahasa Melayu
  • <domain>/en/home - Bahasa Inggeris

Saya telah menggunakan arahan berikut di dalam fail '.htaccess' untuk benarkan akses dari IP tertentu sahaja kepada URL yang mengandungi path bermula dengan "/en"

RewriteCond expr "! -R '192.168.100.10'"
RewriteCond expr "! -R '192.168.101.0/24'"
RewriteCond %{REQUEST_URI} ^/en
RewriteRule ^(.*) /lamanutama [R=302,L]

Fail .htaccess bagi joomla sedia mengandungi arahan Rewrite yang lain. Oleh itu, ia mungkin memberi kesan dan membuatkan arahan Rewrite yang baru dimasukkan tidak berfungsi. Oleh itu, ianya perlu diletakkan sebelum arahan Rewrite sedia ada.

Rujukan : https://perishablepress.com/apache-redirect-range-ip-addresses/

Leave a Reply

Your email address will not be published. Required fields are marked *