The Rekomendasi dari proyek Apache adalah:
Secara umum, Anda hanya boleh menggunakan file .htaccess ketika Anda tidak memiliki akses ke file konfigurasi server utama. ... kesalahpahaman umum adalah bahwa otentikasi pengguna dan arahan mod_rewrite harus masuk .htaccessfile.
Jadi harap atur AllowOverride Nonedan semua arahan Anda di httpd.conf utama (dan / atau subbagian yang Anda Include)
Ketika Apache tidak dikonfigurasi dengan AllowOverride NoneAnda sudah terjadi penalti kinerja (kecil), terlepas dari apakah atau tidak ada .htaccessfile yang digunakan.
Ini karena untuk setiap dan setiap apache permintaan perlu memeriksa keberadaan .htaccessfile potensial di setiap (sub-) direktori yang mengarah ke sumber daya yang diminta. Misalnya ketika file diminta keluar dari direktori / www / htdocs / example, apache harus mencari file berikut:
/.htaccess
/www/.htaccess
/www/htdocs/.htaccess
/www/htdocs/example/.htaccess
Jadi, untuk setiap akses file keluar dari direktori itu, ada 4 akses sistem file tambahan, bahkan jika tidak ada file-file itu ada. (Jika AllowOveride diatur ke /)
Panggilan sistem yang digunakan untuk itu ( man 2 stat) dengan sendirinya tidak terlalu mahal dan biasanya sistem file cache digunakan daripada polling disk yang sebenarnya, membatasi persyaratan IO yang sebenarnya, tetapi masih bisa bertambah, sebagaimana artikel ini berpendapat.
Ketika satu atau lebih .htaccessfile aktual benar-benar ada, apache masih perlu opendan membacanya (memicu operasi baca IO lain dan biasanya juga operasi penulisan IO untuk memperbarui atimeatribut sistem file ) dan menguraikannya sebelum logika di dalamnya dapat diterapkan.
Tidak seperti ketika arahan Anda berada di utama httpd.conf, yang hanya membutuhkan apache untuk menguraikannya sekali, pada saat startup, setiap .htaccessfile perlu ditafsirkan lagi untuk setiap permintaan.
Seberapa mahal, di samping operasi IO, mem-parsing file .htaccess tergantung pada kerumitannya.
Itu akan membutuhkan penentuan tolok ukur yang cermat.