Tray: Difference between revisions
Line 115: | Line 115: | ||
<div class="cli"> | <div class="cli"> | ||
<span style="color:#00ff00;">mhan</span><span style="color:#444444;">@</span><span style="color:#00cccc;">brahms</span><span style="color:#999999">:</span><span style="color:blue;">~/sanban</span><span style="color:#cccccc;"> | <span style="color:#00ff00;">mhan</span><span style="color:#444444;">@</span><span style="color:#00cccc;">brahms</span><span style="color:#999999">:</span><span style="color:blue;">~/sanban</span><span style="color:#cccccc;"> | ||
$ ln -s artisan ~/bin/artisan.sanban && chmod u+x ~/bin/artisan.sanban | $ <b class="color:white;">ln -s ./artisan ~/bin/artisan.sanban && chmod u+x ~/bin/artisan.sanban</b> | ||
</span> | </span> | ||
</div> | </div> |
Revision as of 19:06, 26 February 2015
This is a page for taking notes for current workflow process. Intended for further processing and organization.
Laravel 5
- Tested on Ubuntu 14.04.2 LTS, Apache/2.4.9, PHP 5.5.15RC1, Laravel (5.0; installer version 1.2.0) / medium / less than 10 minutes
Installation
Prerequisite environment setup
Make sure you have PHP 5.4 or greater version installed. On a Debian-derived distribution such as Ubuntu, it's as simple as # apt-get install php5
.
Other basic requirements are mcrypt, mbstring. OpenSSL support is built-in on this version[1]. I also install JSON, xdebug, sqlite, readline, mysql, memcached, intl, and curl.
mhan@brahms:~/testing $ sudo apt-get install php5-mcrypt php5-json php5-xdebug php5-sqlite php5-readline php5-mysql php5-memcached php5-intl php5-curl
mbstring is a part of libapache2-mod-php5 package[2].
mhan@brahms:~/testing $ sudo apt-get install libapache2-mod-php5
Files and applications
Download Laravel installer using Composer.
$ composer global require "laravel/installer=~1.1"
Changed current directory to /home/mhan/.composer
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing symfony/process (v2.6.4)
Down Downloading: 100%
- Installing symfony/console (v2.6.4)
Down Downloading: 100%
- Installing guzzlehttp/streams (2.1.0)
Down Downloading: 100%
- Installing guzzlehttp/guzzle (4.2.3)
Down Downloading: 100%
- Installing laravel/installer (v1.2.0)
Down Downloading: 100%
symfony/console suggests installing symfony/event-dispatcher ()
symfony/console suggests installing psr/log (For using the console logger)
Writing lock file
Generating autoload files
Instead of adding ~/.composer/vendor/bin to the PATH environment variable, I simply made a symbolic link to it in ~/bin/ folder.
$ ln -s ~/.composer/vendor/bin/laravel ~/bin/laravel
Create a new Laravel application.
mhan@brahms:~/testing
$ laravel new sanban
Crafting application...
Generating optimized class loader
Compiling common classes
Compiling views
Application key [CJwBsllwDbWLlxy7zH7zRATmSu2laUyA] set successfully.
Then I enable access to this new application via web. This is an apache config.
<VirtualHost *:80>
ServerAdmin admin@hostname.com
ServerName sanban.hostname.com
ServerSignature Off
DocumentRoot /srv/www/sanban.hostname.com/public
<Directory /srv/www/sanban.hostname.com/public>
Options -Indexes +FollowSymLinks -MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Make sure to restart the httpd (i.e. $ service apache2 restart
on Ubuntu).
Post-installation updates
Update app.url, app.timezone[3].
<?php
// config/app.php
..
'url' => 'http://hostname.com',
..
'timezone' => 'America/Denver',
..
I also like to add a link to artisan PHP executable into my ~/bin folder.
mhan@brahms:~/sanban $ ln -s ./artisan ~/bin/artisan.sanban && chmod u+x ~/bin/artisan.sanban
I add the application short name as an extension to artisan because I have multiple instances of Laravel applications and create links to corresponding artisan executables.
Configuration
Name the application
I'm naming the application sanban.
mhan@brahms:~/sanban $ artisan.sanban app:name sanban
References
- ↑ Stack Exchange. Program documentation. Stack Exchange. N.p., n.d. Web. 26 Feb. 2015. <http://askubuntu.com/questions/323005/php-openssl-extension-has-a-package>.
- ↑ Stack Exchange. Program documentation. Stack Exchange. N.p., n.d. Web. 26 Feb. 2015. <http://askubuntu.com/questions/491629/how-to-install-php-mbstring-extension-in-ubuntu>.
- ↑ 26 Feb 2015. <http://php.net/manual/en/timezones.php>.