Pub:

Sedikit catatan mengenai pengalaman pribadi untuk beberapa kegunaan .htaccess pada hosting Apache.

Redirect

Sebelum dapat melakukan redirect dengan .htaccess, kita perlu mengaktifkan RewriteEngine, sebagai berikut:

RewriteEngine On

Dari http ke https

RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]

Dari www ke non www

Contoh dengan penulisan nama domain:

RewriteCond %{HTTP_HOST} ^www.ahonerd.com [NC]
RewriteRule ^(.*)$ https://ahonerd.com/$1 [L,R=301]

Contoh tanpa menuliskan nama domain:

RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [L,R=301]

Dari semua subdirectory ke /index.php:

RewriteCond %{REQUEST_FILENAME} -d
RewriteCond $1 !^index\.php
RewriteRule ^(.+)$ /index.php [L]

Clean URL

Maksudnya untuk menjadikan URL lebih bersih dari symbol-symbol seperti ? dan atau &.

.htaccess

Penjelasan code di atas:

  • Group pertama maksudnya untuk menampilkan website dalam beberapa bahasa, untuk contoh di atas kita sudah men-cover 3 bahasa, yaitu en, jp dan bahasa default.
  • Group ke-2 maksudnya untuk mengkonversi metode http get, pada contoh di atas adalah page dan sub, dari format semula seperti: /index.php?page=blog&sub=post sehingga URL yang terlihat menjadi: /blog/post, dan dari /index.php?page=blog menjadi: /blog. Karena kita perlu men-cover 3 bahasa, maka setiap bahasa harus diulang.

Gzip Compression

Dengan menerapkan feature ini, akan memperkecil ukuran file yang perlu diberikan dari server ke browser. Dengan memperkecil ukuran file, tentunya akan mempercepat proses loading (transfer) file yang dibutuhkan oleh browser untuk dapat menampilkan design website yang telah kita buat.

.htaccess

Feature Gzip tidak dapat menerapkan kompresi pada file yang sudah dikompres (compressed format), seperti png, zip dll.

Pada server Apache, (saya pribadi menggunakan metode ini) bisa juga menggunakan metode berikut:

.htaccess

Apabila metode diatas tidak bekerja, bisa coba metode berikut:

.htaccess

Untuk memastikan apakah kompresi yang kita lakukan berhasil atau tidak, bisa diperiksa pada link ini atau ini.

EXPIRES CACHING

.htaccess

Loading comments...