Pengalaman saya dengan framework PHP dimulai dengan Codeigniter v2. Saat itu saya merasa ditantang oleh dosen saat mengerjakan skripsi minor D3 yang menyarankan jika hendak menggunakan PHP untuk skripsi sekalian gunakan framework, dan akhirnya pilihan jatuh ke Codeigniter yang saat itu sedang berada di puncak kepopuleran.
Codeigniter waktu itu menawarkan kemudahan, setelah selesai unduh source code codeigniter saya cukup simpan di folder localhost
dan setelah itu langsung bisa diakses di browser dengan mengetikan localhost/folder-codeigniter
. Lalu bagaimana dengan laravel ?
Saat pertama kali saya mencoba laravel saya sudah bingung duluan, belum nyentuh frameworknya sudah dibuat bingung dengan composer
, setelah selesai dengan composer
dan berhasil mempunyai source code laravel ternyata tidak bisa langsung diakses seperti codeigniter, saat akses laravel dengan cara localhost/folder-laravel
yang muncul malah daftar folder dan file yang tersedia di folder tersebut.
Maka berikut adalah beberapa cara yang bisa digunakan untuk memulai mencoba laravel di lokal, dengan catatan sudah memiliki source code laravel.
1.Mengubah Struktur Folder
Struktur dasar laravel yang disediakan itu seperti ini
Jadi saat mengakses halaman dengan localhost/folder-laravel
akan mendapatkan tampilan seperti gambar di atas. Agar laravel bisa diakses dengan cara tersebut maka struktur folder mesti diubah.
Pertama buat satu folder baru, saya beri nama code
lalu setelah itu salin semua folder dan file kecuali folder public
ke dalam folder code
. Setelah itu keluarkan semua file di dalam folder public
ke root folder , sehingga setrukturnya menjadi seperti ini.
Lalu buka file index.php
dan ubah dua bagian, pertama :
require __DIR__.'/../bootstrap/autoload.php';
Menjadi
require __DIR__.'/code/bootstrap/autoload.php';
Kedua :
$app = require_once __DIR__.'/../bootstrap/app.php';
Menjadi
$app = require_once __DIR__.'/code/bootstrap/app.php';
Lalu coba akses kembali localhost/folder-laravel
jika berhasil akan menampilkan
Kelebihan :
Cara ini dapat digunakan jika mau memasang laravel di shared hosting dimana tidak mempunyai akses untuk konfigurasi apache/nginx.
Kekurangan :
Perlu usaha tambahan seperti memastikan beberapa berkas tidak dapat diakses, mengatur dengan .htaccess untuk beauty url, dan lain-lain.
2. Menggunakan Artisan Serve
Salah satu keunggulan laravel adalah tersedianya command line interface yang disebut php artisan
. Dengan artisan ini kita dapat mengerjakan banyak hal seperti migrasi database, “import” data dummy, dan tentu saja yang akan dibahas kali ini yaitu artisan serve
.
Pertama masuk ke dalam folder laravel yang sudah ada, lalu di terminal/CMD ketikan perintah berikut
$ cd /var/www/html/folder-laravel
$ php artisan serve
Sampai di terminal memunculkan hal seperti ini
php artisan serve
Laravel development server started on http://localhost:8000/
Sekarang saat mencoba mengakses localhost:8000/
seharusnya browser menampilkan ini
Kelebihan : Mudah dan cepat, cukup mengetikan perintah sederhana maka laravel sudah siap digunakan.
Kekurangan : Hanya bisa digunakan di lokal, bukan berarti scriptnya tidak jalan di server tapi buat apa ?
3. Virtual Host
Jika menggunakan apache, maka virtual host ini dapat digunakan, kenapa saya menggunakan apache sebagai contoh ? Karena apache merupakan webserver yang sangat populer dan banyak digunakan oleh hosting-hosting. Dan pada tulisan ini saya menulikan konfigurasi virtual host apache di Debian 8 Jessie.
Pertama pindah dulu ke dalam folder konfigurasi apache
$ cd /etc/apache2/sites-available/
Lalu salin 000-default.conf
menjadi test-laravel.app.conf
$ sudo cp 000-default.conf test-laravel.app.conf
Selanjutnya buka berkas konfigurasi test-laravel.app.conf
$ sudo gedit test-laravel.app.conf
Dan ubah isinya menjadi seperti ini
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName test-laravel.app
ServerAlias www.test-laravel.app
DocumentRoot /var/www/html/folder-laravel/public/
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory "/var/www/html/folder-laravel/public/">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Aktifkan mod_rewrite sekaligus aktifkan konfigurasi file yang sudah diedit ini.
$ sudo a2enmod rewrite
$ sudo a2ensite test-laravel.app.conf
karena ini di lokal mesin tambahkan alamat virtual host di file hosts
sudo gedit /etc/hosts
Tambahkan baris berikut
127.0.0.1 test-laravel.app
Terakhir, restart apache
$ sudo /etc/init.d/apache2 restart
JIka sudah, akses melalui browser melalui alamat test-laravel.app
dan browser akan menampilkan :
Kelebihan : Lebih rapi dan aman karena tidak mengubah struktur folder laravel itu sendiri. Bisa digunakan juga di hosting jika mempunyai akses ke konfigurasi virtualhost.
Kekurangan : Perlu usaha tambahan dalam membuat virtual host dan juga ketelitian karena jika salah-salah sedikit dari konfigurasi web bisa down.
4 dan 5
Khusu nomor 4 dan 5 saya akan tulis terpisah karena akan cukup panjang, sebgai spoilernomor 4 akan membahas menggunakan homestead
dan nomor 5 menggunakan docker
. Sampai jumpa.