Keuntungan dan kelebihan permalink tanpa index.php ini sendiri sangatlah jelas karena lebih mudah dikenali search engine sehingga blog atau situs kita menjadi lebih SEO Friendly. Untuk blog berbasis wordpress sendiri setidaknya ada 3 tipe permalink yaitu:
1. Default "Ugly" contoh: http://mysite/?p=N
2. mod_rewrite "Pretty Permalinks" contoh: http://mysite/2011/mypost/
3. PATHINFO "Almost Pretty" contoh: http://mysite/index.php/2011/mypost/
Untuk sebagian situs, terkadang mengalami kesulitan untuk mendapatkan struktur permalink yang ideal atau pretty permalink. Seperti halnya yang pernah kualami sendiri yaitu munculnya index.php pada permalink.
Hmmhh.., menyebalkan juga rasanya udah bolak balik kesana kemari nyari rujukan yang bener buat menghilangkan index.php ini pada permalink. Semua rujukan sama saja, dengan menambahkan kode di .htacces, tapi anehnya buatku itu tetap tidak berhasil. Namun ada hal lain yang membuatku penasaran, yaitu struktur permalink di localhost kompiku bisa tanpa menggunakan “index.php” ini, sementara di hostingan index.php ini selalu muncul. Lalu aku teringat satu hal dan “tring” (kira2 seperti itulah bunyinya satu ide muncul di kepalaku :D). Ada perbedaan yang mendasar yang kupahami, yaitu server localhost menggunakan XAMPP yang memakai server apache sementara aku tahu server hostingan menggunakan server orangeserve.
Dan di sinilah pokok permasalahannya ditemukan, perbedaan server yang digunakan tiap hosting berbeda-beda rupanya seperti apache, paid.orangeserve, nginx dan lainnya. Kebanyakan menggunakan server Apache sehingga rata-rata tutorialpun hanya menyarankan menggunakan mod rewrite di file .htacces saja, sehingga wajarlah akupun sempat tersesat dan tidak menemukan solusi yang jitu untuk menghilangkan index.php pada permalink ini. Disamping perbedaan server itu, ada hal lain yang dapat menyebabkan index.php ini selalu muncul diantaranya server blockage oleh pihak hosting yang dapat menyebabkan server software tidak bekerja sehingga proses rewrite pada file .htacces gagal, wajarlah index.php akan selalu muncul. Bagi sobat yang mengalami hal yang sama, mudah-mudahan cara yang saya lakukan ini bisa membantu.
- Pertama, kenali server yang digunakan pada hosting. Jika menggunakan server apache seharusnya dengan menambahkan mod rewrite pada .htacces sudah bisa bekerja. Namun jika menggunakan server lain (orangeserve, nginx, etc), kita bisa Memaksa WordPress untuk seolah-olah mengenali bahwa server yang kita gunakan adalah apache.
- Untuk memaksa wordpress ini, buka file wp-includes/vars.php melalui cpanel dan cari kode berikut:
$is_apache = strstr($_SERVER['SERVER_SOFTWARE'], 'Apache') ? 1 : 0; Tambahkan comment // untuk mendisable kode asalnya menjadi: //$is_apache = strstr($_SERVER['SERVER_SOFTWARE'], 'Apache') ? 1 : 0;
- Kemudian tambahkan kode $is_apache = 1; di bawah kode di atas sehingga menjadi:
//$is_apache = strstr($_SERVER['SERVER_SOFTWARE'], 'Apache') ? 1 : 0; $is_apache = 1;
- Baru setelah itu kita tambahkan mod rewrite pada .htacces dengan kode berikut:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
Setelah selesai, cek kembali permalink structure pada dashboard sobat, dan selamat kini index.php pada permalink sobat sudah bisa dihilangkan.
Nah, mudah bukan? Sebenarnya cara manipulasi server ini sudah jelas dibahas pada Using Permalinks di situs resminya wordpress. Saya sendiri malah terjebak oleh tutorial-tutorial yang tidak menjelaskan perbedaan server dan hal lainnya yg sudah dijelaskan di atas, yang ternyata dapat berpengaruh pada struktur permalink.
Namun ternyata, optimasi permalink tidak cukup hanya dengan menghilangkan “index.php” saja. Untuk dapat meningkatkan visibilitas situs kita di mata search engine sehingga menjadi lebih SEO Friendly, sobat juga harus memperhitungkan penggunaan extensi .htm .html pada permalink. Adapun keuntungannya sudah saya bahas pada Alasan Pemakaian Ekstensi .html pada Permalink. Di samping itu pula, kaitannya dengan optimasi dan kecepatan loading blog, silahkan baca pula Optimasi WordPress – Penggunaan Tahun pada Struktur Permalink. Demikian, semoga dapat membantu dan memberi solusi bagi semuanya. Ammiin…
Bang, kalau tanpa htaccess gmn?
Butuh mod rewrite gan jadi harus disetting di htaccessnya