Ruby on rails Rails:检测用户代理在开发中工作,但在生产中不工作?

Ruby on rails Rails:检测用户代理在开发中工作,但在生产中不工作?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我正在尝试在我的应用程序中检测黑莓用户代理,它在我的开发版本中运行良好。但是,当我在生产中重新部署应用程序时,什么也没有发生 应用程序\u helper.rb def blackberry_user_agent? request.env["HTTP_USER_AGENT"] && request.env["HTTP_USER_AGENT"][/(Blackberry)/] end application.html.erb <% if blackberry_

我正在尝试在我的应用程序中检测黑莓用户代理,它在我的开发版本中运行良好。但是,当我在生产中重新部署应用程序时,什么也没有发生

应用程序\u helper.rb

  def blackberry_user_agent?
    request.env["HTTP_USER_AGENT"] && request.env["HTTP_USER_AGENT"][/(Blackberry)/]
  end
application.html.erb

<% if blackberry_user_agent? -%>
<div class="message">
<p>Using a Blackberry? <a href="http://mobile.site.ca/">Use the mobile optimized version</a>.</p>
</div>

使用黑莓


我尝试过使用raketmp:cache:clear清除缓存,并重新启动了mongrel几次。显然,HTTP_用户_代理在生产中恢复为零。我正在将Nginx与一个混血儿集群一起使用。

您是在混血儿面前使用Apache还是Nginx

您正在记录用户\u代理吗?这是我的nginx.conf:

log_format main '$remote_addr - $remote_user [$time_local] $request '
                  '"$status" $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "http_x_forwarded_for"';
尝试:


我正在将nginx与mongrel集群一起使用。你能在gist或pastie中发布你的nginx配置吗?我尝试将其添加到配置的第21行,然后重新启动服务器。还是不起作用,还有其他想法吗?所有这些行都完成了,它设置了日志的格式。您是否检查了nginx日志以查看它作为黑莓的用户代理报告了什么?
request.user_agent