คราวที่แล้วผมมีปัญหากับ MySQL บน Mac OS X และยังไม่สามารถแก้ไขได้ เลยคิดว่าใช้เครื่อง Ubuntu Dapper ที่ใช้อยู่แทนดีกว่า มาจดวิธีลงเก็บไว้คนอื่นจะได้ประโยชน์ด้วย
ตามปกติแล้ว Rails จะมากับเว็บเซิร์ฟเวอร์ในตัวชื่อ WEBrick (เหมือนกับ Mono ที่มี XSP) เอาไว้ให้ลองรันง่ายๆ ไม่ต้องคอนฟิกอะไร แต่ในการใช้งานจริงที่มีโหลดมาก ก็ควรเปลี่ยนไปใช้ Apache แทน (รวมถึง MySQL ด้วย) วันนี้เอาแค่ลง Rails อย่างเดียวก่อน
เครื่องที่ใช้เป็น Ubuntu Dapper Flight 3 แต่น่าจะใช้ได้กับ Ubuntu Breezy (5.10) ด้วย ตอนลงแพกเกจจริงๆ ผมใช้ Synaptic แต่ในนี้ขอใช้วิธี apt จะได้เขียนง่ายๆ
ขั้นตอน
- อย่างแรกที่สุดต้องเปิดใช้ Universe ก่อน เพราะแพกเกจ Rails อยู่ใน Universe ให้เปิด terminal ขึ้นมา แก้ไขไฟล์
/etc/apt/sources.list
หาบรรทัดที่เขียนว่า
# deb http://us.archive.ubuntu.com/ubuntu/ dapper universe
# deb-src http://us.archive.ubuntu.com/ubuntu/ dapper universeให้ลบเครื่องหมาย # หน้าบรรทัดออก
- เซฟไฟล์ แล้วสั่ง
sudo apt-get update
- รอมันอัพเดตข้อมูลแพกเกจซักแป๊บ พอมันบอกว่าเสร็จแล้ว เราก็ทำการติดตั้ง Rails
sudo apt-get install rails
- แค่นี้เราก็จะได้ Ruby และ Ruby on Rails มาพร้อมใช้งาน เราก็ทดลอง Rails ของเรา เริ่มจากการสร้างโครงการใหม่มาซักโครงการก่อน ผมสร้างโครงการชื่อ testapp ในไดเรคทอรีว่างๆ แถวไหนก็ได้
~$ mkdir rails
~$ cd rails
~/rails$ rails testappรอจนมันเจ็นโครงการเสร็จ
- สั่งให้ WEBrick เริ่มทำงาน
~/rails/testapp$ ruby script/server
แล้วเปิดเบราว์เซอร์ไปที่ http://0.0.0.0:3000 ตอนนี้น่าจะเห็นหน้าต้อนรับของ Rails ตามรูป
- หลังจากนั้นเราก็ลองสร้างโปรแกรมตัวอย่างขึ้นมา ผมใช้ตัวอย่างตาม Rolling with Ruby on Rails
~/rails/testapp$ ruby script/generate controller mytest
~/rails/testapp$ vi app/controllers/mytest_controller.rb - ใส่ข้อความเหล่านี้ลงไป
class MytestController < ApplicationController
def index
render_text "Hello"
end
end - ลองเข้าไปที่ http://0.0.0.0:3000/mytest ก็ควรจะเห็นโปรแกรม Ruby on Rails ตัวแรกของเราแล้ว
ตอนหน้ามาเซ็ต Apache กันต่อ
เค้าให้ใช้ lighthttpd ไม่ใช่เหรอครับ
apache + mod_ruby มันไม่workหรือไงนี่แหละ
ผมใช้ apache +
ผมใช้ apache + fcgi อยู่
mod_ruby ยังไม่เคยลอง แต่เห็นที่เขา blog ไว้ก็น่าจะใช้ได้นะครับ
http://blog.shugo.net/articles/category/mod_ruby
http://wiki.rubyonrails.org/rails/pages/mod_ruby
ส่วนความเร็วไม่รู้เหมือนกัน