Ceritanya ini saya sedang mengunakan VPS dengan sistem operasi Ubuntu. Nah, setelah diinstal Apache sebagai webservernya, ternyata module mod_rewrite-nya belum aktif. Kok saya tahu bisa belum aktif? Saya menggunakan bantuan sintaks PHP seperti berikut:

<?php
if(in_array('mod_rewrite', apache_get_modules()))
    die('enabled');
else
    die('not enabled!');

Lalu, saya mencoba meng-enable-kan module mod_rewrite tersebut. Caranya ya melalui perintah di SSH.

sudo a2enmod rewrite
sudo service apache2 restart

Nah, begitu sudah enabled, ternyata aplikasi saya yang menggunakan laravel tidak bisa juga berhasil dari segi routing-nya. Jadi, kalau ditembak ke alamat http://website.ku/login, hasilnya selalu NOT FOUND. Dan kalau ditembak ke alamat http://website.ku/index.php/login baru bisa.

Padahal kalau dipikir-pikir file .htaccess-nya sudah ada dan tidak saya modifikasi sama sekali. Saya bingung, kira-kira apanya ya?

Selanjutnya saya konsultasi ke stackoverflow dan bertemu dengan jawaban ajib berikut.

Modifikasi file konfigurasi Apache (asumsinya Apache yang saya gunakan adalah Apache2.4). Melalui SSH, ketik perintah berikut:

sudo nano /etc/apache2/apache2.conf

Pada apache2.4, biasanya AllowOverride di-set None, padahal yang kita butuhkan adalah di-set All.

Cari  <Directory /var/www/> kemudian ubah AllowOverride None menjadi  AllowOverride All, lalu simpan dan restart kembali apache-nya (sudo service apache2 restart).

Selamat mencoba! Semoga berhasil ya…

Sumber:

Advertisements