部署 搭建基于 Phusion Passenger + nginx 的环境来运行 Ruby on Rails 应用程序

howiloveyou · 2013年01月12日 · 最后由 howiloveyou 回复于 2013年01月13日 · 3429 次阅读

目标:搭建基于 Phusion Passenger + nginx 的环境来运行 Ruby on Rails 应用程序。

测试机 RoR 基本环境说明: Linux ubuntu 3.5.0-21-generic #32-Ubuntu SMP Tue Dec 11 18:51:59 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux ruby-1.9.3-p362 [email protected] Phusion Passenger version 3.0.19 nginx version: nginx/1.3.11

nginx.config 文件中的路径配置: ... passenger_root /home/simmon/.rvm/gems/[email protected]/gems/passenger-3.0.19; passenger_ruby /home/simmon/.rvm/wrappers/[email protected]/ruby; ... server { location / { root /wwwroot/demoproject/public; passenger_enabled on; passenger_use_global_queue on; #root html; #index index.html index.htm; }
} ....

问题现象描述: http://localhost/ 返回空白页面。 查看了下 nginx 下的 logs 目录下的日志文件: error.log 文件里没有错误信息,是一些启动 nginx 时的报的警告; access.log 文件里出全是下面的错误信息:

127.0.0.1 - - [12/Jan/2013:16:18:18 +0800] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.4 (KHTML, like Gecko) Ubuntu/12.10 Chromium/22.0.1229.94 Chrome/22.0.1229.94 Safari/537.4"

问题:😭 现在问题是不知道这个 304 的错误怎么解决?不知道 nginx 配置哪些参数?

Best regards.

304 不是错,是页面内容没变化

这信息定位不出来,直接给个我用的配置参考吧,都是最基础的配置 server { listen 3333; server_name xx.com;

root /home/andersen/deployments/xxxx/current/public; passenger_enabled on; passenger_base_uri /; rails_spawn_method smart; rails_env production; } 上面是 rails,下面是 sinatra 的 server { listen 82; server_name xxx.com;

#access_log /home/andersen/deployments/autoplayer/log/access.log main; #error_log /home/andersen/deployments/autoplayer/log/error.log debug; root /home/andersen/deployments/autoplayer/public; passenger_enabled on; passenger_base_uri /; #passenger_use_global_queue on; }

需要 登录 后方可回复, 如果你还没有账号请 注册新账号