Articles of ruby,

Thin :: RestartTimeout使用onebyone

Thin的独特function看起来很酷,但是导致我的部署失败。 ** [out :: 97.107.141.165] Stopping server on 127.0.0.1:3000 … ** [out :: 97.107.141.165] Sending QUIT signal to process 2515 … ** [out :: 97.107.141.165] >> Exiting! ** [out :: 97.107.141.165] Starting server on 127.0.0.1:3000 … ** [out :: 97.107.141.165] Waiting for server to start … ** [out :: 97.107.141.165] /home/deploy/iamthewalrus/shared/bundle/ruby/1.9.1/gems/thin-1.2.11/lib/thin/controllers/cluster.rb:106:in `block in wait_until_server_started': The […]

奇怪的疯狂login问题 – 可能Cookie,浏览器,NGINX相关

我们目前有一个非常奇怪的问题,正在运行在NGINX上的Spree安装。 用户正在报告恢复密码的问题,并且一旦恢复,就有login网站的问题。 我们还没有能够重现这个错误,但是知道这肯定是由于我们收到的用户的所有报告。 也不是用户能够login时,他们尝试不同的浏览器。 如果第一次尝试是在Firefox,然后他们尝试Chrome浏览器将最终在一个很好的情况下工作。 来自用户的电子邮件: “还没有进入商店,我已经两次更改密码,什么时候什么都没有发生,只是刷新页面,我留下了一个空白的电子邮件和密码。 “ NGINX错误日志中的错误: cache: [GET /login] miss cache: [POST /user/sign_in] invalidate, pass configuration: Rails 3.1,Spree 1,passenger-3.0.11,ruby 1.8.7 REE 任何和所有的答案/build议非常感谢。

将passenger_base_uri信息传递给Rails应用程序

我正在使用nginx / 1.2.1 + Phusion Passenger 3.0.13,我在一台服务器上使用我的nginx.conf文件中的passenger_base_uri参数设置了多个Rails应用程序。 它看起来如下所示: server { listen 80; server_name localhost; root /path/to/code; passenger_enabled on; passenger_base_uri /app1; passenger_base_uri /app2; rails_env production; } 现在让我们说,我在www.mysite.com主办这个。 我的问题是,当我去www.mysite.com/app1,它加载正常…但所有链接从该网页指向www.mysite.com。 该应用程序不知道它实际上是托pipe在一个名为app1的子文件夹。 我知道我可以手动键入添加下面的configuration选项到我的应用程序: config.action_controller.relative_url_root = "/app1" 但我希望不必手动添加。 关于如何以编程方式将这些信息input到Rails应用程序的任何想法,以便我可以作为variables访问它,并正确地更新我的链接? 谢谢!

Rails 4 – Live,即使刷新后连接仍然继续

我做了一个在Rails 4中使用Live方法的应用程序。但是,当我使用它时,每一次刷新都会继续多一次连接,直到达到连接到数据库的最大连接数,然后挂起并永久加载。 我可以做些什么来确保当用户刷新网站或决定离开时连接被closures? 这是我的设置: def events response.headers["Content-Type"] = "text/event-stream" redis = Redis.new redis.psubscribe("participants.*") do |on| on.pmessage do |pattern, event, data| response.stream.write("event: #{event}\n") response.stream.write("data: #{data}\n\n") end end rescue IOError logger.info "Stream closed" ensure redis.quit response.stream.close end 我用Nginx,用彩虹! 在Ubuntu 10.04上。 Ruby 2.0.0-p195 Postgresql Rails 4

Pi上的nginx + passenger + sqlite3得到502坏的网关

n00b到RoR这里。 我正在使用git clone将我的Mac上的应用程序移到我的覆盆子pi上。 克隆发生后,我没有bundle install 然后我安装了乘客和nginx: gem install passenger rvmsudo passenger-install-nginx-module 设置数据库并播种 rvmsudo rake db:setup RAILS_ENV=production 然后设置nginx加载启动后的指导。 复制/粘贴nginx文件 sudo cp /var/www/monsterpi/nginx /etc/init.d/ 在configuration文件中进行了更改 sudo nano /opt/nginx/conf/nginx.conf 看起来像这样 server { listen 80; server_name monsterpi.kendrickcoleman.c0m; passenger_enabled on; root /var/www/monsterpi/public; error_log /var/log/nginxerror.log; access_log /var/log/nginxaccess.log; } 然后运行这些命令来完成它 sudo chmod +x /etc/init.d/nginx sudo /usr/sbin/update-rc.d nginx defaults sudo /etc/init.d/nginx start 当我去我的服务器monsterpi.kendrickcoleman.c0m,它的工作原理。 […]

在Intranet / LAN上部署生产Rails应用程序

我通常的部署设置包括在vps上运行的ubuntu / postgresql / nginx / unicorn,我需要设置一个只能在Intranet / LAN上运行的应用程序(在ubuntu上)。 从来没有做过这之前有什么不同,从通常的VPS部署? 我只需要改变我的nginx.conf中的server_name ; server { listen 80; server_name www.example.com ; root /home/deployer/example/current/public; } 到server_name localhost; ?

错误502 NGINX + rails + dokku上的错误网关

在将我的Ruby on Rails应用程序部署到Digital Ocean上的Dokku液滴之后,我收到了一个错误502。 该应用程序build立和部署到Heroku就好了,以及本地。 检查NGINX日志,我看到以下内容: 2014/01/10 01:56:32 [error] 2376#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: <my.ip.add.ress>, server: app.campbellscoop.com, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:49153/", host: "app.campbellscoop.com" 什么可能导致这个错误?

nginx passenger重载错误,无队列的网站被处理

我得到这个错误消息。 我明白这是因为队列,但它总是这样(没有队列处理,它被卡住了)。 使用乘客4和nginx。 我不得不重新启动nginx才能正常工作 这个网站负载很重 很抱歉,有太多人同时访问这个网站。 我们正在处理这个问题。 请稍后再试。

使用nginx和Puma设置多个rails应用程序

我有一个Web服务器使用nginx和Passenger的组合服务多个Rails应用程序。 这非常简单,因为Passenger几乎可以安装所有你需要连接到nginx的东西。 我发现“ 彪马的Rails应用程序 ”似乎解释了如何设置nginx和彪马在一起。 为了在同一台服务器上提供第二个Rails应用程序,需要如何修改这个configuration? 另外,如果系统重新引导或其他问题,本指南不会自动重新启动应用程序。 有没有办法做到这一点? nginx + Passenger组合似乎是默认的。

如何使用NGINX反向代理将Dragonfly Images保存到远程服务器?

问题: 图像没有读取/写入我的数据库服务器文件结构的蜻蜓。 我能够通过我的所有Ruby模型的活动logging与我的数据库进行交互。 我所有的静态资产正在工作。 用户生成的图像应保存为我的远程服务器上的www.test.example.com/media/AgGdsgDGsdgsDGSGdsgsdg …。 然而,他们正在保存在他们上传的任何应用程序服务器上。 背景: Ruby / Rails,Nginx,Passenger。 我们正从单一的服务器解决scheme转向3服务器解决scheme。 我有2个应用程序服务器位于数据库服务器后面。 我使用蜻蜓gem为用户生成的图像和其他内容。 在我们目前的单服务器设置上,一切都指向本地主机,并且工作得很好。 10.102.66.4是我的数据库服务器的LAN IP。 APP服务器NGINX.CONF: user pete; … http { passenger_pre_start http://example.com; passenger_pre_start http://example.com:3000; … proxy_cache_path /home/pete/example/shared/tmp/dragonfly levels=2:2 keys_zone=dragonfly:100m inactive=30d max_size=1g; … server { listen 80; server_name example.com; rewrite ^ https://example.com$request_uri? permanent; } server { listen 443 ssl default deferred; ssl on; […]