最近 webrick 常常出一些莫名问题,想把环境换成 nginx+thin,但是部署的时候总是不成功,thin 是能够正确运行的,但是加上 nginx 就不行了,想请大大们介绍介绍 nginx 对于 rails 的详细配置,谢谢啦 ~~~
ps: 我是在 windows 上开发的~~
根据我们的安装路径,nginx 的配置文件在/opt/nginx/conf/nginx.conf 操作: #ee /opt/nginx/conf/nginx.conf 找到并修改如下配置,注释 location:
server { listen 8088; #设置端口 server_name localhost;
root /usr/home/mayf/webdbjk/public;#rails app 路径 passenger_enabled on;
rails_env production; }
#location /{ #root html; #index index.html index.html; # } 说明: listen:监听的端口 server_name : 服务名,默认为 127.0.0.1 root: rails 程序存放的目录。记住一定要指到 public 目录 passenger_enabled: 是否开启 passenger。该选项一定要选择 on。 rails_env:发布模式
启动 nginx # killall nginx # /opt/nginx/sbin/nginx 添加开机启动项只需在/etc/rc.local 中添加/opt/nginx/sbin/nginx 就行了。
文件读写授权,否则不能生成日志文件和导出文本文件 #chmod 777 log #cd public #chmod 777 *
另外在 config\production.rb 里面改动如下代码: #为 true 时,显示布局有问题 config.cache_classes = false
# In production, Apache or nginx will already do this #为 false 时,无法显示图片和 js 等 config.serve_static_assets = true
#13 楼 @hisea
Started POST "/checkmen/update_person_edit" for 127.0.0.1 at 2013-01-18 10:51:31 +0800
Processing by CheckmenController#update_person_edit as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"umzBmJtpGwieMVfzAitYLS4+shW36xYyFerl69ruHkY=", "component"=>"IS-PS-CA", "sapname"=>"", "firstname"=>"", "lastname"=>"", "eid"=>"", "email"=>"", "id"=>"810", "checkmanid"=>"9590", "commit"=>"save"}
然后是做了一些后来操作,
ActionView::MissingTemplate (Missing template checkmen/update_person_edit, application/update_person_edit with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee]}.
这个是提示:
ActionView::MissingTemplate (Missing template checkmen/update_person_edit, application/update_person_edit with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee]}.
缺少 template