วันเสาร์ที่ ๙ มิถุนายน พ.ศ. ๒๕๕๐

How to install Basa-Asa

ยังไม่มี stable release เราก็เลยต้อง check out จาก Subversion

$ svn checkout http://basaasa.googlecode.com/svn/trunk/ basaasa
A basaasa/trunk
A basaasa/basa
A basaasa/basa/app
.... (ยาว)

(แต่ถ้าได้แบบ

$ svn

-bash: svn: command not found

ก็อาจจะเป็นไปได้ว่ายังไม่ได้ลง subversion ก็สามารถหาดาวน์โหลดมาลงได้ทั่วไป)

เสร็จเราก็จะได้โฟลเดอร์ชื่อ basaasa ออกมา
ใน basaasa ก็จะมีโฟลเดอร์ชื่อ basa อยู่ข้างในอีกที

ขั้นตอนต่อไปก็คือ ย้าย basa ไปไว้ในโฟลเดอร์สำหรับเว็บ
ถ้าเป็น Debian หรือ Ubuntu ก็อยู่ที่ /var/www
ถ้าเป็น Windows ก็อาจจะเป็น c:\inetpub\wwwroot

$ mv basaasa/basa /var/www

ถ้าย้ายไม่ได้ก็ต้องแก้ permission หรือว่าสั่ง sudo อะไรก็ว่ากันไป

ย้ายไปแล้ว พอเปิดเว็บ เช่น http://localhost/basa ก็ควรจะมีหน้าจอของ
Basa-Asa ขึ้นแล้ว แต่ว่าจะมี error message บอกว่าหาฐานข้อมูลไม่เจอ
หรือว่า เขียนไฟล์ไม่ได้เป็นต้น แต่ถ้าเปิดไม่ขึ้นเลยก็ต้องลองดู
Apache แล้วว่ารันอยู่หรือเปล่า

basa-asa screenshot

ขั้นตอนต่อไปคือการตั้งค่าฐานข้อมูล (โดยที่เราสมมุติว่าใช้ MySQL
ได้อยู่แล้ว และ username คือ root)

ก่อนอื่นย้ายไปโฟลเดอร์ที่ Basa-Asa อยู่ก่อน

$ cd /var/www/basa

แล้วก็สร้างฐานข้อมูล

$ mysql -uroot -e 'create database basa;'

$ mysql -uroot basa < mysql.sql

แล้วก็ต้องแก้ไขไฟล์ของ CakePHP นิดหน่อย

$ vim app/config/database.php

เราก็ไปแก้พวกนี้ (ได้แก่ host, login, password) ให้ตรงกับในเครื่องเรา

var $default =
array('driver' => 'mysql',

'connect' => 'mysql_connect',

'host' => '127.0.0.1',

'login' => 'root',

'password' => '',

'database' => 'basa',

'prefix' => 'basa_');


หมดขั้นตอนของฐานข้อมูลแล้ว ก็แก้ file permission เล็กน้อย

$ chown -R www-data app/tmp

เพื่อที่ Apache จะได้มาเขียน log ไฟล์ cache ฯลฯ​ได้ แน่นอนเครื่องต่างๆ
อาจจะไม่ได้ใช้ username ชื่อ www-data หมด แต่ www-data นี่ของ Debian

เท่านี้มันก็น่าจะเริ่มใช้แล้ว ขาดแต่ยังไม่มี user และ group
เราก็เข้าไปใน MySQLl

$ mysql -uroot basa
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 151
Server version: 5.0.37 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

ที่ prompt ของ MySQL เราก็เพิ่ม group ได้

mysql> insert into zooid_groups(id,name) values(1,'Admin');
Query OK, 1 row affected (0.09 sec)

mysql> insert into zooid_groups(id,name) values(2,'Translator');
Query OK, 1 row affected (0.09 sec)

จากนั้นก็ user แต่ user เพิ่ม admin คนเดียวก็พอ

insert into zooid_users(username, password, group_id) values ('root', md5('yourpassword'), 1);
Query OK, 1 row affected, 2 warnings (0.36 sec)

เสร็จแล้ว (ผมลืมอะไรไปหรือเปล่า?) สำหรับ Apache และ PHP ต้องลง mod_rewrite และ php-gd ด้วย

ไม่มีความคิดเห็น: