มาเล่น Laravel กัน – ตอนที่ 1: Installation

สืบเนื่องจากเห็นพี่รูฟกับน้องรุ่งเล่น Silex กัน ผมก็เลยหาอะไรมาเล่นบ้าง (จะใช้กับงานจริงด้วย) หวยมาออกที่เจ้า Laravel 

แนะนำสั้นๆ Laravel เป็น PHP Framework ตัวหนึ่งที่พัฒนามาตั้งแต่ปี 2011 (ปัจจุบัน version 4.X) Laravel มี slogan ว่า “The PHP framework for web artisans” โดย Laravel นั้นถูกสร้างขึ้นจาก components หลายตัวของ Symfony2 แต่ออกแบบเพื่อให้การพัฒนาได้ง่ายกว่า Symfony2 ว่าแล้วก็ลุยกันเลย

Note: บันทึกทุกอย่างทำอยู่บน Mac OS X 10.7.5 (Lion) โดยเริ่มตั้งแต่ศูนย์

1. Install MacPorts:
เอาไว้ช่วย install prerequisites อื่นๆได้ง่าย ให้ download ไฟล์ installer จาก http://www.macports.org/install.php#pkg แล้ว install
จากนั้นลองทดสอบด้วยคำสั่งดังต่อไปนี้

$ port -v
MacPorts 2.2.1

2. Install Apache2, PHP5.5, MySQL5.5, OpenSSL, และ Mcrypt:
ใช้คำสั่งดังต่อไปนี้

$ sudo port install php55-apache2handler php55-mysql php55-openssl php55-mcrypt mysql55-server

จากนั้นกำหนด PATH เพิ่มเติมในไฟล์ ~/.bash_profile ดังนี้

export PATH=/opt/local/bin:/opt/local/sbin:/opt/local/apache2/bin:/opt/local/lib/mysql55/bin:$PATH

สร้าง alias ของ php command ด้วยคำสั่งดังต่อไปนี้

$ sudo ln -s /opt/local/bin/php55 /opt/local/bin/php

3. Config MySQL:
เปิดไฟล์​ /opt/local/etc/mysql55/my.cnf แล้วเพิ่ม config ประมาณนี้ เพื่อกำหนด data directory

[mysqld]
datadir=/PATH_TO_YOUR_DATA_DIR

สร้าง database ตั้งต้นใช้คำสั่งดังต่อไปนี้

$ sudo mysql_install_db --user=mysql
$ sudo mkdir /opt/local/var/run/

กำหนด root password ใช้คำสั่งดังต่อไปนี้

$ sudo mysqladmin shutdown -u root password 'NEW_PASSWORD'

4. Autostart MySQL:
ใช้คำสั่งดังต่อไปนี้

$ sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql55-server.plist

5. Config PHP:
สร้างไฟล์ php.ini

$ sudo copy /opt/local/etc/php55/php.ini-development /opt/local/etc/php55/php.ini

เปิดไฟล์ /opt/local/etc/php55/php.ini แล้วกำหนด default_socket ดังนี้

mysql.default_socket=/opt/local/var/run/mysql55/mysqld.sock
mysqli.default_socket=/opt/local/var/run/mysql55/mysqld.sock
pdo_mysql.default_socket=/opt/local/var/run/mysql55/mysqld.sock

ทดสอบด้วยคำสั่งดังต่อไปนี้

$ php -v
PHP 5.5.7 (cli) (built: Dec 14 2013 00:44:43) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies

6. Config Apache2:
เปิด PHP Module ใช้คำสั่งดังต่อไปนี้

$ cd /opt/local/apache2/modules
$ sudo apxs -a -e -n php5 mod_php55.so

เปิดไฟล์ /opt/local/apache2/conf/httpd.conf
เปลี่ยน DocumentRoot ใหม่

DocumentRoot "/PATH_TO_YOUR_HTDOCS_DIR/"

เพิ่ม config directory permissions

<Directory "/PATH_TO_YOUR_HTDOCS_DIR/">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

เพิ่ม config PHP extension

AddType application/x-httpd-php .php

เพิ่ม index.php เป็น DirectoryIndex

DirectoryIndex index.html, index.htm, index.php

เปิด Virtual hosts confit ด้วยการ uncomment

Include conf/extra/httpd-vhosts.conf

เพิ่ม Virtual host ชื่อ mylaravel.local.net
เปิดไฟล์ /opt/local/apache2/conf/extra/httpd-vhosts.conf แล้วเพิ่ม config ดังนี้

<VirtualHost *>
    DocumentRoot "/PATH_TO_YOUR_HTDOCS_DIR/mylaravel/public"
    ServerName mylaravel.local.net
</VirtualHost>

7. สร้าง domain mylaravel.local.net:
เปิดไฟล์ /etc/hosts แล้วเพิ่ม config ดังนี้

127.0.0.1 mylaravel.local.net

8. Autostart Apache2:
ใช้คำสั่งดังต่อไปนี้

$ sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist

ทดสอบเปิด Web Browser เข้า

http://mylaravel.local.net

9. Install Composer:
เป็น Dependency Manager for PHP ใข้คำสั่งดังต่อไปนี้

$ sudo php -r "eval('?>'.file_get_contents('https://getcomposer.org/installer'));" -- --install-dir=/usr/local/bin
$ sudo mv /usr/local/bin/composer.phar /usr/local/bin/composer

ทดสอบ ด้วยคำสั่งดังต่อไปนี้

$ composer
   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 0e9a9a3875c317d610d6a995d94dd598b7bececd 2013-12-16 21:58:46

10. Create Laravel project:
ใข้คำสั่งดังต่อไปนี้

$ cd /PATH_TO_YOUR_HTDOCS_DIR
$ composer create-project laravel/laravel mylaravel --prefer-dist
$ chmod -R 777 mylaravel/app/storage

ทดสอบเปิด Web Browser เข้า

http://mylaravel.local.net

ถ้าเห็นแบบนี้ ยินดีด้วยครับ คุณได้ไปต่อตอนที่ 2 แต่ถ้าไม่ ทิ้ง comment ไว้ด้านล่างเลยครับ

Screen Shot 2013-12-18 at 6.41.25 PM

2 thoughts on “มาเล่น Laravel กัน – ตอนที่ 1: Installation

Leave a Reply

Your email address will not be published. Required fields are marked *