推荐用thin部署RoR

折腾了好长时间,从ngnix+passenger到apache+passanger到thin,其间遇到问题无数,加上本来就不太熟悉linux权限,折腾得心力交瘁。

相比passenger,thin部署非常简单,而且和开发时用的WebBrick很像,容易上手。

不过thin在rvm环境下绑定80端口和设置开机启动有些问题。

一些参考教程:

[1] CentOS – thin web server for Ruby(centos下安装thin,运行rails)

[2] thin 开机自启动

[3] how to start thin in default port

解决rubygems速度慢的Tips

用RVM来安装RoR的时候,rubygems的安装文件是从官方下载的,由于某些众所周知的原因,从这个地址下载很慢很慢很慢。

好消息是淘宝建立一个rubygems的国内镜像,但是没有找到下载rubygems安装文件的地址。

折腾了下发现只需要输入:

$ gem sources –remove http://rubygems.org/
$ gem sources -a http://ruby.taobao.org/
$ gem sources -l
*** CURRENT SOURCES ***

http://ruby.taobao.org

# 请确保只有 ruby.taobao.org

再执行安装就可以了,嗖嗖的。

 

 

[1] linux下rvm安装ruby以及rubygems的过程分享

CentOS+Ngnix+Passenger+RoR配置时出现403forbidden的一种可能原因

今天给自己的RoR配置服务器,Follow的是这个教程,介绍得都蛮好的,除了某些命令需要变一下(比如ruby script/server要换成rails server之类的)。

运行之后访问地址一直显示是403 Forbidden。搜索了一下可能的原因是:

1. nignx.conf 文件里没有写 passenger_enabled on; 或者位置不对。

2. nignx.conf文件里 root 的位置不对。

3. 对应文件目录的权限不够,最好先将权限改成777试试。

以上试了之后都没有成功,发现nignx.conf的第一行有着被注释的”#user   nobody”,联想到权限的原因,试着改成了”user  root”,果然就可以了。

发现网上没有类似的解决方法,所以记录下来。

 

另:上面的理解还是有偏差,参考这篇教程一步步做比较好。

 

[1] stackoverflow

[2] nginx forbidden 403:多进程下的子程序的用户和用户组指定

分类目录

About