推荐用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

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