Bluehost上部署Rails应用

December 23, 2008

本来以前就部署过,不过每次相隔时间都比较长,于是每次都Google一遍,实在太浪费时间,还是自己记下来比较好。

主要参考的是Radiant这个用rails写的内容管理系统的wiki文章,讲如何在Bluehost上部署Radiant。我觉得关键有这么几点:

1. 修改.htaccess文件

把Handler那几行改成:

# General Apache options
AddHandler fcgid-script .fcgi
# AddHandler cgi-script .cgi
# Options +FollowSymLinks +ExecFCGI

2.修改dispatch.fcgi

加上这么几句:

ENV['RAILS_ENV'] = 'production'
ENV["GEM_HOME"]= "/home/[USER_NAME]/ruby/gems"
ENV["GEM_PATH"]= "/home/[USER_NAME]/ruby/gems:/usr/lib/ruby/gems/1.8" 

不过我觉得后面两句应该用处不大,是跟他前面的相呼应的,如果你用到一些自己安装的gems,就应该follow这篇文章。

3. 修改文件夹权限

我是把public,tmp和log三个文件夹的权限都变成了755。cd到rails应用根目录下,比如说rails/yourapp:

chmod -R 755 public

chmod -R 755 tmp

chmod -R 755 log

4. 建立符号链接

把rails/yourapp/public链接到public_html里面的一个子目录:

ln -s ~/radiant_app_folder_name/public ~/public_html/website_name

但是我这么弄了之后还是不行,后来找到Rails Google Group里面的讨论也有点用。正好我是要把应用作为账户的根目录使用,于是

$ mv ~/public_html ~/original_public_html

$ ln -s ~/rails-apps/myapp/public ~/public_html

然后就可以访问了:http://www.flexgtd.com

值得说明一下的是,bluehost上cpanel里面那个ruby on rails的安装向导一点也不好用,不要用那个来部署。我被搞得晕头转向也没搞明白怎么弄,而且觉得它的灵活性太差。

posted in Internet, Notes by cowoo

Follow comments via the RSS Feed | Leave a comment | Trackback URL

Leave Your Comment

 
Powered by Wordpress and MySQL. Theme by Shlomi Noach, openark.org