Articles of ruby on rails 3

轨; wicked_pdf是邪恶的缓慢

1.9.2&rails 3.0.9 wicked_pdf 0.8.0 wkhtmltopdf 0.10.0 rc2 @ / usr / local / bin / nginx和pow 它似乎几乎没有工作,如果有的话,它的速度非常缓慢。 我做了什么: 捆绑安装后,进入rails控制台进行简单的testing: pdf = WickedPdf.new.pdf_from_string('Hello There!')“ * ** * ** \”/ usr / local / bin / wkhtmltopdf \“-q – – ** * ** * 像这样长时间的挂起,就像30分钟左右,但最终还是回来了。 直接用wkhtmltopdf google.com google.pdf掉到shell来testingwkhhtmltopdf,然后回来: Loading page (1/2) Printing pages (2/2) Done 很快,虽然我不得不cntl -c出来 […]

Nginx和Unicorn上resource_url的意外行为

我在cpanel上有一个简单的独angular兽+ nginx设置,部署与capistrano。 nginx.conf服务器块如下所示: server { error_log /var/log/nginx/vhost-error_log warn; listen 123.456.789.0; server_name my.dev.site.com www.my.dev.site.com; access_log /usr/local/apache/domlogs/my.dev.site.com-bytes_log bytes_log; access_log /usr/local/apache/domlogs/my.dev.site.com combined; root /home/me/sites/dev/current/public; try_files $uri/index.html $uri @unicorn; location @unicorn { proxy_pass http://unicorn_dev_site; } error_page 500 502 503 504 /500.html; } 在这个设置下,任何对像User这样的资源的引用都会产生url助手的奇怪行为。 按照预期, <%= users_path %>将成为my.dev.site.com/users 。 <%= users_url %>成为unicorn_dev_site/users 。 是什么导致了这种情况,这两种助手方法之间的区别是什么?

独angular兽+ NGINX:不能启动独angular兽

我刚刚开始玩Unicorn和NGINX设置(任何全面的参考,将不胜感激。我已经爬行谷歌三天,并编译我必须让我的服务器在机架空间运行)。 继续我的问题。 它看起来像我有,希望是正确的,设置NGINX指向我的Rails应用程序的目录。 它能够显示500错误页面。 现在我正在开始独angular兽的过程 unicorn_rails -c /home/deployer/public_html/app/config/unicorn.rb 它给了我这个错误 /home/deployer/.rvm/gems/ruby-1.9.3-p0/gems/unicorn-4.1.1/lib/unicorn/socket_helper.rb:144:in `initialize': Permission denied – bind(2) (Errno::EACCES) from /home/deployer/.rvm/gems/ruby-1.9.3-p0/gems/unicorn-4.1.1/lib/unicorn/socket_helper.rb:144:in `new' from /home/deployer/.rvm/gems/ruby-1.9.3-p0/gems/unicorn-4.1.1/lib/unicorn/socket_helper.rb:144:in `bind_listen' 我试图启动端口80上的应用程序,我知道我需要超级用户权限绑定到低于1024的任何东西。但是,当我尝试使用sudo它给了我 sudo: unicorn_rails: command not found 任何帮助,将不胜感激!

在EC2上使用nginx +独angular兽服务Rails 3应用程序时遇到困难

当我将浏览器指向“rails_app.com”时,我可以查看EC2实例上的rails_app / public / index.html,但是当我删除rails_app / public / index.html时,出现nginx 403错误, directory index of "/home/www-data/rails_app/public/" is forbidden, 而不是能够看到我的Rails 3.0.3 rails_app。 我在用着 Nginx Version 0.8.54 Unicorn_rails Version 3.4.0 我读过的一篇文章说,我需要确保正确版本的ruby可以用于用户www-data,我也是这样做的。 我有设置为用户和组的rails_app的目录所有者到www-data,并将权限设置为775.我可以看到,通过查看访问日志,HTTP请求正在达到nginx。 我有DNS设置为我的域名“rails_app.com”指向一个AWS弹性IP地址,这是我的Rails应用程序运行nginx +独angular兽的EC2实例的弹性IP地址。 我想我解决了这个403错误以上更新2中所述。 现在我得到一个500错误。 我修正了500错误,如下面更新4所述。 我与runnng nginx /usr/sbin/nginx -c /home/www-data/rails_app/config/nginx.conf 和我一起跑独angular兽 bundle exec unicorn_rails -p 8000 -E production -c /home/www-data/rails_app/config/unicorn.rb -D 这是我的unicorn.rb: worker_processes 1 preload_app true main_dir […]

502错误nginx + ruby​​ on rails应用程序

申请详情: Rails 3.1.0 Ruby 1.9.2 独angular兽4.2.0 resque 1.20.0 nginx的/ 1.0.14 redis 2.4.8 我正在使用active_admin gem ,所有URL的响应200, 但只有一个URL在生产上给出了502错误。 耙路: admin_links GET /admin/links(.:format) {:action=>"index", :controller=>"admin/links"} 和其在地方(发展)的工作。 本地主机日志:响应码200 Started GET "/admin/links" for 127.0.0.1 at 2013-02-12 11:05:21 +0530 Processing by Admin::LinksController#index as */* Parameters: {"link"=>{}} Geokit is using the domain: localhost AdminUser Load (0.2ms) SELECT `admin_users`.* FROM `admin_users` WHERE `admin_users`.`id` […]

在rails 3.2的生产模式下检查500内部服务器错误

我有我的应用程序在我的linode帐户的生产模式,我得到一个500页的内部服务器错误消息: We're sorry, but something went wrong. 但是在我的开发环境中工作正常,这个页面。 我怎样才能debugging这个错误? 如何在生产模式下查看错误来源? 我想在生产模式下显示错误。 我该怎么做? 谢谢!

独angular兽不能在生产模式下运行

我正在运行栈nginx +独angular兽+ rails 3.2 当我跑步的时候 bundle exec unicorn_rails -c config/unicorn.rb -E development 没关系,网站运行良好 当我尝试在生产模式下启动独angular兽网站 bundle exec unicorn_rails -c config/unicorn.rb -E production 我有“我们很抱歉,但是出了问题”。 错误:

大机器上的Rails应用程序只能获得60个请求/秒的基准testing结果

我在一台结实的机器上托pipe一个Rails应用程序 – 我认为 – 应该能够处理比我给它更高的负载。 以下是来自ApacheBench的压倒性testing结果: ab -kc 250 -n 1000 -H "Accept-Encoding: gzip,deflate" https://www.mysite.com/ Server Software: nginx/1.0.15 Server Hostname: www.mysite.com Server Port: 443 SSL/TLS Protocol: TLSv1/SSLv3,DHE-RSA-AES256-SHA,2048,256 Document Path: / Document Length: 4258 bytes Concurrency Level: 250 Time taken for tests: 16.498 seconds Complete requests: 1000 HTML transferred: 4258000 bytes Requests per second: 60.61 [#/sec] […]

Heroku,H12和passthrough上传超时

概述: 我有一个照相机,把照片发送到我的networking应用程序。 然后我的networking应用程序存储用户数据,并将图片发送到用户的脸谱/粉丝页面。 我的Web应用程序运行Ruby on Rails @ Heroku Cedar堆栈。 stream: 我的web应用程序通过一个POST,从web表单接收照片,就像一个web表单。 展台等待服务器响应。 如果上传失败,则会再次发送图片。 在facebook上传完成之后,webapp的响应才会被触发。 问题: 所有处理完成后,Webapp只会将数据发送给PhotoBooth。 很多时候这会在30秒后发生。 这导致Heroku开火H12 – 超时。 解决scheme? 在上传文件时保持请求存活 (返回一些响应数据,以防止Herku发起H12 – https://devcenter.heroku.com/articles/http-routing#timeouts )。 – 可能吗? 如何在Ruby中实现这一点? 更改为Unicorn + Nginx并激活上传模块(这种方式dyno只在上传完成后才接收到请求 – Unicorn + Rails + Large Uploads )。 真的有可能吗? 使用机架超时gem 。 这会使我的许多上传失败,所以图片永远不会在Facebook上发布,对吧? 改变架构。 使上传直接到S3,旋转工作人员检查新的图片上传到S3桶,下载并发送到Facebook。 – 这可能是最好的,但需要花费很多的时间和精力。 我可能从长远来看,但我现在正在寻找一个快速的解决scheme。 其他…

零星的400错误的请求错误nginx / 0.7.67与Heroku和Rails 3

更新:这个错误似乎是浏览器特定于Chrome。 我已经在Firefox和IE中点击了大约50次的链接,我似乎无法完成这个任务。 此外,一旦发生,我可以切换到FF或IE,它将在这两个罚款。 我在Heroku上的Rails 3应用程序中有一个特定的页面,加载一段时间。 我可以点击相同的页面,并加载没有问题。 但是在一定数量的加载之后,它突然开始给我一个400错误请求错误,下面是nginx / 0.7.67。 它发生一次后,每次我加载页面,我得到400错误。 但是,如果我暂时离开应用程序一段时间,例如一夜之间,该页面在早上再次运行一会儿。 但是如果我点几次页面,就会再次给我这个错误。 这不是在本地发生,所以它似乎必须是一个英雄问题。 我也尝试重新启动heroku,但没有帮助。 似乎有帮助的唯一的东西是给它一段时间。 只要错误,heroku日志不会给我任何新的信息。 一切似乎工作正常,然后我得到一个结束727 | https | 400只是停下来。 如果有帮助,我正在使用https。 完整的错误heroku日志是: [33m2011-07-02T15:25:59+00:00 heroku[nginx]: <-[0m GET /matters/show/34 HTTP/1.1 | 10.212.125.194 | 727 | https | 400 让我知道,如果你有一个想法,这个页面的代码将有助于解决这个问题。