Rails ngix+passenger+rails 都部署好了,却出现 404 问题

lsaturn · 2013年01月05日 · 最后由 wjlight 回复于 2013年01月08日 · 4049 次阅读

比如说部署在 www.examlple.com 这个域名下 我使用 www.example.com 可以访问到 public/index.html 但是 www.example.com/xxx 任意路径,不管正确不正确的路径,统统返回 404 Not Found nginx/1.2.4 而不是 rails 自己带的 publci/404.html,请问是什么地方没有配置对

看了下 nginx 的日志 2013/01/05 14:19:20 [error] 1164#0: *7 open() "/home/ubuntu/apps/ccnt_server/public/1" failed (2: No such file or directory), client: 171.216.50.100, server: ec2-54-242-118-120.compute-1.amazonaws.com, request: "GET /1 HTTP/1.1", host: "ec2-54-242-118-120.compute-1.amazonaws.com" 就好像只是把静态的页面搭建好了,rails 没有发挥作用

正常情况下你是需要删除掉 public/index.html 文件的,其它的路径都在 route.rb 文件指明了,404 的指向可以在 nginx 里面配置。

#2 楼 @elico_yqf 删除了之后连唯一能显示的都没有了,我看着感觉 router.rb 文件根本没有发挥作用

error_page 404 /404.html;

那你试试 rake routes 看看有些什么,如果你配置的相关 route 的话,应该是可以找得到的。

#5 楼 @elico_yqf rake routes online_heart_beat GET /online/heart_beat(.:format) online#heart_beat 我感觉都是对的,只是 rails 完全被无视了,现在只能运行静态页面

@lsaturn lz,问题解决了啊,我也遇到了跟你相似的问题~~

@lsaturn 问题解决了没?

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