Mungkin tutorial ini terlewat, karena sudah ada beberapa tulisan mengenai laravel, tapi yang paling dasar mengenai instalasi belum. Tutorial instalasi untuk laravel versi 5 dengan platform linux, lebih kepada ubuntu dan turunannya. Seperti yang kita ketahui minimal requirement PHP adalah versi 5.6
1. Instalasi LAMP
Pastikan anda sudah memiliki komponen web server, PHP dan database MySQL. Berikut requirement yang dibutuhkan :
Install PHP 5.6
$ sudo apt-get install python-software-properties $ sudo add-apt-repository ppa:ondrej/php $ sudo apt-get update $ sudo apt-get install -y php5.6 php5.6-mcrypt php5.6-gd
Install Apache2
$ apt-get install apache2 libapache2-mod-php5
Install MySQL
$ apt-get install mysql-server php5.6-mysql
2. Instalasi Composer
Requirement selanjutnya adalah composer. Composer dibutuhkan untuk instalasi dependensi dari laravel.
$ curl -sS https://getcomposer.org/installer | php $ sudo mv composer.phar /usr/local/bin/composer $ sudo chmod +x /usr/local/bin/composer
3. Instalasi Laravel
Ada beberapa cara untuk instalasi laravel. Kita akan menggunakan cara yang umum digunakan melalui composer :
$ composer create-project laravel/laravel --prefere-dist nama_web
maka selanjutnya composer akan mendownload laravel beserta dependensi yang dibutuhkan.
Jika berhasil, pada dasarnya anda sudah berhasil instal laravel, tapi untuk berjalan semestinya masih belum.
4. Laravel menggunakan direktori storage untuk menyimpan session, file cache dan file lainnya hasil generate, oleh karena itu kita perlu mensetting direktori storage writeable :
chmod -R /var/www/nama_web/app/storage
5. Selanjutnya untuk memastikan route berfungsi pada laravel, kita perlu untuk setting mod_rewrite dan virtualhost
$ vim /etc/apache2/sites-available/laravel.example.com.confServerName laravel.example.com DocumentRoot /var/www/nama_web/public Options FollowSymLinks AllowOverride None AllowOverride All ErrorLog ${APACHE_LOG_DIR}/error.log LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined
Lalu kita menjalankan perintah a2ensite dan restart apache :
$ a2ensite laravel.example.com $ sudo service apache2 reload
done!