论坛首页 编程语言技术论坛

rails 和 fcgi 的奇怪问题:render 时候 500 错误

浏览 3080 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-10-20  

         我的rails 程序在本地(Mongrel) 跑的很正常 , 但是 昨天我把它放到lunarpages 的空间上(lunarpages 的空间支持 rails ),  lunarpages 的连接 方式 是  apache -> fcgi -> rails .

        绝大多数页面都正常,就几个页面有问题 , 浏览器 上是 500 的 错误(不是 rails 带的 那个 500.html),但是 log 里面

一切正常 , 一点问题也没有 ....... , 后来 我 发现 这几个页面 的controoler 里面 都有 render(:action=>XXX) 之类的语句 , 难道他们和 fcgi 冲突 ? (BTW , fastcgi.crash.log 也没有问题)

       还有一个问题, 在 这种共享空间里面 , 怎么 停掉 或者 重起 我的 rails 应用呢 ? 呵呵, 不像在本地 , 重起一下 Mongrel 就好了 , 我 控制不了 服务商 的 apache 呀 .

      这2个问题大家能回答那个回答那个 , 不能回答也十分感谢关心 :)

 

   

   发表时间:2007-10-20  
你的问题应该去找你的托管商问啊,何必舍近求远?
0 请登录后投票
   发表时间:2007-10-20  
引用
后来 我 发现 这几个页面 的controoler 里面 都有
render(:action=>XXX) 之类的语句 , 难道他们和 fcgi 冲突 ?


我遇到过次没写:controller就出错的时候,不用fcgi就不会出错
用了fcgi就必须写上controller

引用
浏览器 上是 500 的 错误(不是 rails 带的 那个 500.html)

去看apache CGI log
0 请登录后投票
   发表时间:2007-10-20  
引用
还有一个问题, 在 这种共享空间里面 , 怎么 停掉 或者 重起 我的 rails 应用呢 ? 呵呵, 不像在本地 , 重起一下 Mongrel 就好了 , 我 控制不了 服务商 的 apache 呀 .



应该修改了某些文件后,例如environment.rb,会自动重启吧
我用的虚拟主机是这样的, BTW,那个重启还真耗费时间啊,要等几分钟
0 请登录后投票
   发表时间:2007-10-21  
谢谢 ‘ddddddddd’ , 去看了 下 error log . , 发现了 这么一个 ,public_html/dispatch.fcgi" aborted: error parsing headers: malformed header 'recently_activated? []' , 我用了 acts_as_authenticated , recently_activated? 这个 方法是 Observer (UserObserver 里面的一个方法), 代码很简单 , 就是 发个邮件

   
ruby 代码
 
  1. class UserObserver < ActiveRecord::Observer  
  2.     def after_create(user)  
  3.         UserNotifier.deliver_signup_notification(user)  
  4.     end  
  5.       
  6.     def after_save(user)  
  7.         UserNotifier.deliver_activation(user) if user.recently_activated?  
  8.           
  9.         UserNotifier.deliver_forgot_password(user) if user.recently_forgot_password?  
  10.           
  11.         UserNotifier.deliver_reset_password(user) if user.recently_reset_password?  
  12.     end  
  13.       
  14. end  

 呵呵 , 这个方法怎么会跑道 headers 里面 ? 还请各位支着呀 :)
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics