WORKSHOP ขั้นตอนการติดตั้ง Yii2 Framework

post Image

การติดตั้ง Yii2-Framework แบบ advanced tamplate

1.ติดตั้ง composer (วิธีติดตั้ง composer)และติดตั้ง composer plugin ก่อน

การติดตั้งและใช้งาน composer

เนื่องจากการพัฒนาด้วย php นั้นมี library และ package ต่างๆเยอะมาก จะติดตั้งใช้งานแต่ละ library ต้องดาวน์โหลดและเลือก version เยอะมาก การติดตั้งค่อนข้างลำบากมาก หรือบางทีติดตั่งมาไม่ support กับ php เราซะงั้น ซึ่งปัญหาปวดหัวเหล่านี้เจ้า composer นี้ช่วยเราจัดการได้อย่างสะดวกสบาย มันยอดมาก ขอบอก มาดูวิธีการติดตั้งครับ

สำหรับ windows (ผมใช้ windows 10 apache 2.4 php 5.6)  ไปดาวน์โหลดกันที่นี่เลยครับ https://getcomposer.org/download/ ไฟล์นี้เลยครับ  Composer-Setup.exe

   ดับเบิ้ลคลิ๊กเพื่อติดตั้งเลยครับ  ติด UAC ให้ตอบ Yes เลยครับ

ตอบ Yes หรือ OK ไปเรื่อยๆเหมือนติดตั้งโปรแกรมทั่วไปเลยครับ

เมื่อเสร็จแล้ว เปิด command ขึ้นมาแล้วพิมพ์คำสั่ง composer จะขึ้นหน้าตาแบบนี้เป็นอันว่าเครื่องเราใช้ composer ได้แล้วครับ

(ถ้าเคยติดตั้ง plugin composer ไปแล้วก็ไม่ต้องทำอีก)

composer global require "fxp/composer-asset-plugin:1.1.4" composer require yiisoft/yii2 

2.สำหรับติดตั้งแบบ yii2advanced template ให้พิมพ์คำสั่งที่ root directory ดังนี้เสร็จแล้วกด enter ครับ

composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-advanced yii2advanced 

(เมื่อให้ yii2advanced คือ directory ของเว็บที่เราจะทำการสร้างและติดตั้ง)

รอสักครู่ครับ ถ้าสำเร็จจะขึ้นภาพดังนี้

จะเกิด directory ชื่อ yii2advanced ดังนี้

เบื้องต้นยังทำงานไม่ได้น่ะครับ ลองมาดูว่าไฟล์ข้างในที่ได้หลังจากติดตั้งเสร็จมีอะไรบ้างครับ

ที่ backend/config  จะมีไฟล์ bootstrap.php ,main.php,params.php ไฟล์ที่ยังไม่มีได้แก่ main-local.php ,params-local.php นั่นเอง ซึ่งไฟล์ที่ใช้ชื่อ xxxx-local.php คือไฟล์ config ที่สำคัญสำหรับแต่ละ server นั้นๆที่จะใช้งานเช่น ไฟล์ เชื่อมต่อ ฐานข้อมูล และค่าพารามิเตอร์สำคัญต่างๆเป็นต้น ซึ่งจะเกิดขึ้นหลังจากที่เราทำการเรียกคำสั่ง init (ซึ่งจะทำในลำดับถัดไป) โดยที่ไฟล์ xxxx-local.php พวกนี้เราจะทำทำ ignore git ไม่ให้ push ขึ้น git server ด้วย เพราะมีค่าของข้อมูลที่สำคัญ ไม่อย่างนั้นเวลาเราทำงานผ่าน git server คนอื่นที่ download ไฟล์เราไปใช้งานก็จะได้รับข้อมูลสำคัญเราไปด้วย เช่น ตัวแปรเชื่อมต่อฐานข้อมูลเป็นต้น

ที่ common/config จะมีไฟล์ bootstrap.php ,main.php,params.php เช่นกัน ไฟล์ที่ยังไม่มีได้แก่ main-local.php ,params-local.php นั่นเอง

ที่ frontend/config จะมีไฟล์ bootstrap.php ,main.php,params.php เช่นกัน ไฟล์ที่ยังไม่มีได้แก่ main-local.php ,params-local.php นั่นเอง

ต่อไปเราจะทำการ init เว็บที่เราพึ่งติดตัั้งเสร็จกันครับ

เปิด command แล้วพิมพ์ cd เข้าไปใน directory ที่เราพึ่งติดตั้งเสร็จ ในที่นี้คือ yii2advanced ก็พิมพ์ cd C:\Apache24\htdocs\yii2advanced แล้วกด enter ดังภาพครับ

เมื่อเข้ามาอยู่ใน directory เว็บของเราแล้วให้พิมพ์คำสั่ง init แล้วกด enter ครับ จะเกิดคำถามให้ตอบโต้ ดังนี้

กด 0 คือเป็นการติดตั้งค่าสภาพแวดล้อมแบบพัฒนาระบบอยู่ (เราจะเลือกแบบนี้เพราะกำลังพัฒนา)

กด 1 คือเป็นการติดตั้งค่าสภาพแวดล้อมแบบ production คือเป็นค่าที่พร้อมรันเป็นเว็บจริง

กด 0 แล้วกด enter ระบบจะถามยืนยันอีกครั้งให้กด Y เพื่อตอบ(Yes) แล้วระบบจะทำการ generate file config ของสภาพแวดล้อมการพัฒนาระบบให้เราดังนี้ครับ

สังเกตุว่าระบบจะสร้างไฟล์ config พวก xxxx-local.php

และสร้างไฟล์ index ให้กับ backend กับ frontend คือ backend/web/index.php และ frontend/web/index.php 

เมื่อ generate ไฟล์เสร็จแล้วระบบจะทำการปรับ permission (chmod 0777,0755) บาง directory ให้ทำการเขียนและแก้ไขได้ เพราะ yii จะมีการสร้างไฟล์พวกแอสเซ็ต(css,js)และไฟล์แคชระบบ

โดย 0777 คือทำได้ทุกอย่าง ดูรายละเอียด permission ตามนี้ครับ

777 คือทุกคนทุกกลุ่มทำได้ทุกอย่าง       ส่วน 755 ตามนี้ครับ  

http://localhost/yii2advanced/frontend/web  ==> สำหรับฝั่งหน้าบ้าน

http://localhost/yii2advanced/backend/web ==> สำหรับฝั่งหลังบ้าน redirect เข้าหน้า Login เลยครับ

ขั้นตอนต่อไปเรามาปรับแต่งการเชื่อมต่อฐานข้อมูลกันครับ

ไปที่ไฟล์ \common\config\main-local.php แล้วแก้ค่าการเชื่อมต่อฐานข้อมูลครับ โดยที่ค่าเริ่มต้นเป็นการเชื่อมต่อกับ mysql ใครใช้ฐานข้อมูลแบบไหนก็ใส่ค่าเข้าไปครับ สำหรับท่านที่ใช้ mysql อยู่แล้วก็ปรับแก้ตามภาพเลยครับ

ลองไปเปิดฐานข้อมูล ณ ตอนนี้ดูว่ามีตารางอะไรบ้างครับ

ทีนี้ไปที่ command อีกทีพิมพ์คำสั่งตามนี้ครับ  yii migrate

กด y เพื่อตอบ yes ครับ เสร็จแล้วกด enter

ระบบได้ทำการสร้างตาราง user ให้เราแล้ว ลองไปดูที่ฐานข้อมูลครับ

1.ตาราง user คือตารางเก็บข้อมุลผู้ใช้งานระบบของ yii

2.ตาราง migration เกิดจากการใช้คำสั่ง yii migrate นั่นเอง มันจะเก็บว่าเราเคยสร้างตารางไหนบ้าง หรือแก้ไขอะไรบ้างทำให้เราควบคุมได้ถ้าเกิดเผลอมา migrate ทับตารางเดิม

โครงสร้างตาราง user ดังนี้ครับ

   

ส่วนข้อมุลในตาราง user นั้นว่างเปล่ายังไม่มีอะไรครับ

ทีนี้เราลองเข้าใช้งานดู เพื่อทดลองใช้งาน User ดูครับ  ไปที่ http://localhost/yii2advanced/frontend/web/index.p... หรือจะเข้าหน้าเว็บแล้วคลิีก Signup ก็ได้นะครับ

ใส่ค่า username ,email , และรหัสผ่านเรา เพื่อสมัครสมาชิก(Signup) ระบบครับ แล้วกดปุ่ม Signup

ถ้าผ่านปกติ ระบบจะ Login อัติโนมัติ สังเกตจะเห็นชื่อเราปรากฏ

ไปดูที่ฐานข้อมูลกันครับ จะปรากฏรายการชื่อของเราที่พึ่งจะ Signup ไป พร้อมข้อมูลที่ yii จัดการให้ดังนี้

ถึงขั้นนี้ถึงจะเรียกได้ว่าเป็นการติดตั้งที่สมบูรณ์พร้อมรันได้แล้วครับ ที่นี้ใช้ browser เปิดดูครับตาม 

ขั้นตอนต่อไป ก็จะเป็นการพัฒนาระบบของเราด้วย yii2 framework 

ที่มา : programmua.com