.htaccess dan 406

beberapa hari terakhir ini, saya mencoba melakukan modifikasi terhadap beberapa option yang ada di engine WordPress yang digunakan oleh website ini. namanya juga iseng-iseng bongkar, kalau nggak rusak nggak belajar, kan? 😛

nah, salah satu ‘korban’ keisengan saya kali ini adalah feature permanent link yang disediakan oleh WordPress sejak saya melakukan upgrade engine beberapa waktu yang lalu[1]. yah, detailnya ada di salah satu entry di sini.

kalau anda memperhatikan, sebelumnya post yang saya tulis selalu menggunakan permanent link yang ‘tidak bersahabat’: hanya menggunakan ID dari post yang saya tulis sebagai parameternya, dengan angka-angka yang cenderung membingungkan. yah, begitulah pokoknya.

gampangnya begini. ini alamat untuk salah satu entry yang saya tulis beberapa waktu yang lalu.

https://yud1.csui04.net/?p=193

sekarang, jadi bisa seperti ini. tadinya sih nggak bisa, karena kustomisasi di engine lama tidak memungkinkan struktur seperti harapan saya[2]. whatever, pokoknya akhirnya bisa.

https://yud1.csui04.net/2007/08/26/back-on-the-rocks-at-last/

yang dilakukan oleh engine baru (dan tidak dilakukan engine lama) ini adalah menambahkan kemampuan untuk modifikasi file .htaccess[3] yang ada di server tempat engine ini di-deploy. cut the crap, akhirnya permanent link dari entry-entry yang ada di sini sekarang menggunakan bentuk yang (harusnya) lebih enak dipandang.

::

…sialnya, timbul masalah. setelah saya menggunakan bentuk permanent link yang baru, saya tidak bisa lagi menulis post di sini. saya bahkan tidak bisa menuliskan comment untuk melakukan comment-reply. aneh, pokoknya.

anehnya lagi, tiba-tiba saya menyadari hal yang tak kalah ‘absurd’: saya tidak bisa memasukkan pesan dengan metode POST[4], kalau saya memasukkan tag HTML dalam tulisan saya. setiap kali meng-klik ‘Submit’, saya hanya menemukan pesan berikut:

Error 406: Not Acceptable

aneh, padahal biasanya tidak ada masalah. file-nya masih ada, sebab kalau tidak seharusnya error 404: File Not Found. hal ini membingungkan, tapi dapat dipastikan bahwa gejala ini timbul setelah saya menambahkan file .htaccess berikut modifikasinya ke server.

selidik punya selidik (baca: main-main ke support WordPress.org, search di Google), akhirnya ditemukan kemungkinan bahwa hal tersebut disebabkan oleh security policy dari pihak penyedia hosting csui04.net. solusinya, coba modifikasi file .htaccess di server.

OK, mari kita coba. katanya sih, tambahkan code ini di .htaccess:

<ifmodule mod_security.c>
SecFilterInheritance Off
</ifmodule>

save .htaccess, lalu… voila. halaman error 406 tidak lagi muncul, dan saya bisa kembali menuliskan entry maupun comment dengan tag HTML.

OK, bagus. akhirnya masalah selesai.

…tapi anehnya, kenapa error 406 tadi cuma muncul kalau saya memasukkan tag HTML, yah?

___

[1] feature untuk kustomisasi permanent link ini sudah ada sejak lama. hanya saja, engine versi lama tidak bisa menyediakan kustomisasi seperti yang saya inginkan. saya baru bisa meng-kustomisasi sesuai keinginan sejak menggunakan WordPress 2.2.

[2] di engine lama, permanent link dengan struktur paling mendekati adalah

[alamat]/index.php/[tahun]/[bulan]/[tanggal]/[nama-post].

menurut saya ini nggak asyik, kelihatan bohongnya 😛

[3] file ini berada di server, digunakan untuk mengatur penanganan request sebuah halaman. bisa digunakan untuk berbagai keperluan, tapi saya sendiri jarang berhubungan dengan benda ini.

[4] salah satu metode untuk mengolah input pengguna dari sebuah form HTML. contoh sederhananya, misalnya untuk comment di blog atau membuat entry baru.