Jebakan Lainnya:
1- Terkadang ide yang bagus untuk menonaktifkan MultiView
Options -MultiViews
Saya kurang paham tentang semua kemampuan MultiView, tetapi saya tahu bahwa ini mengacaukan aturan mod_rewrite saya saat aktif, karena salah satu propertinya adalah mencoba dan 'menebak' ekstensi ke file yang menurutnya sedang saya cari .
Saya akan menjelaskan: Misalkan Anda memiliki 2 file php di dir web Anda, file1.php dan file2.php dan Anda menambahkan ketentuan dan aturan ini ke .htaccess Anda:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ file1.php/$1
Anda berasumsi bahwa semua url yang tidak cocok dengan file atau direktori akan diambil oleh file1.php. Mengherankan! Aturan ini tidak diterapkan untuk url http: // myhost / file2 / somepath . Sebaliknya Anda dibawa ke dalam file2.php.
Apa yang terjadi adalah MultiView secara otomatis menebak bahwa url yang sebenarnya Anda inginkan adalah http: //myhost/file2.php/somepath dan dengan senang hati membawa Anda ke sana.
Sekarang, Anda tidak tahu apa yang baru saja terjadi dan Anda pada saat itu mempertanyakan semua yang Anda pikir Anda ketahui tentang mod_rewrite. Anda kemudian mulai bermain-main dengan aturan untuk mencoba memahami logika di balik situasi baru ini, tetapi semakin Anda menguji semakin tidak masuk akal.
Ok, Singkatnya jika Anda ingin mod_rewrite bekerja dengan cara yang mendekati logika, mematikan MultiView adalah langkah yang tepat.
2- Aktifkan FollowSymlinks
Options +FollowSymLinks
Yang itu, saya tidak begitu tahu detailnya, tapi saya sudah sering melihatnya disebutkan, jadi lakukan saja.