Articles of phusion passenger

Apache Passenger找不到gem

我正在运行Ubuntu 10.04,并且已经转移了一些在Sinatra中build立的站点。 我已经设置了Phusion乘客,但是当我访问这些站点时,我得到一个Passenger LoadError,声称乘客没有这样的文件加载 – sinatra然而当我运行gem list或sudo gem list的时候,我清楚地看到sinatra上市。 为什么不能find这个gem? 我的sudo gem env输出看起来像这样 RubyGems环境: – RUBYGEMS版本:1.3.5 – RUBY VERSION:1.8.7(2009-12-24 patchlevel 248)[x86_64-linux] – 安装目录:/usr/local/lib/ruby/gems/1.8 – RUBY EXECUTABLE:/ usr / local / bin / ruby – 可执行目录:/ usr / local / bin – RUBYGEMS平台: – ruby – x86_64-linux – 创业板path: – /usr/local/lib/ruby/gems/1.8 – /root/.gem/ruby/1.8 – 创业板configuration: – […]

当位置指令设置时,客户端证书authenticationsslv3警报握手失败

我正在尝试为在Rails上运行的Web服务设置客户端证书身份validation。 该服务在apache2,passenger和mod_ssl上运行。 我已经能够成功地生成密钥并为整个域设置客户端证书身份validation。 这工作正常,但是,当我尝试包括位置指令时,我总是得到这个错误(从浏览器和ruby客户端): SSL_connect returned=1 errno=0 state=SSLv3 read finished A: sslv3 alert handshake failure (OpenSSL::SSL::SSLError). 当我从curl运行命令,我得到这个错误: curl: (52) Empty reply from server 我删除该指令,它工作正常。 这是什么我这个虚拟主机confiration看起来像。 <VirtualHost *:443 *:80> ServerName wrangler.optimis.local DocumentRoot "/Users/jmoore/Sites/data-wrangler/public/" RackEnv development ErrorLog "/Users/jmoore/Sites/data-wrangler/log/error.log" CustomLog "/Users/jmoore/Sites/data-wrangler/log/access.log" common SetEnv GEM_HOME /Users/jmoore/.rvm/gems/ree-1.8.7-2010.02 SetEnv GEM_PATH /Users/jmoore/.rvm/gems/ree-1.8.7-2010.02 # Enable SSL on this domain SSLEngine on SSLProtocol ALL […]

在Ubuntu上使用RVM Gemset时,如何将Passenger指向正确的Gem文件? 捆绑:: GemNotFound

我有一个Ubuntu服务器(10.04)与Nginx和乘客。 我已经安装了RVM,并且安装了Passenger 3.02的全局gemset。 我的应用程序是在另一个有轨道等gemset安装。 当我configurationnginx来服务应用程序时,我得到一个错误,说Bundler找不到这个gem。 在任何源代码中找不到abstract-1.0.0(Bundler :: GemNotFound) 运行rvm信息我看到以下内容: environment: PATH: "/home/richard/.rvm/gems/[email protected]/bin:/home/richard/.rvm/gems/ree-1.8.7-2010.02@global/bin:/home/richard/.rvm/rubies/ree-1.8.7-2010.02/bin:/home/richard/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" GEM_HOME: "/home/richard/.rvm/gems/ree-1.8.7-2010.02@richarddowden" GEM_PATH: "/home/richard/.rvm/gems/ree-1.8.7-2010.02@richarddowden:/home/richard/.rvm/gems/ree-1.8.7-2010.02@global" MY_RUBY_HOME: "/home/richard/.rvm/rubies/ree-1.8.7-2010.02" IRBRC: "/home/richard/.rvm/rubies/ree-1.8.7-2010.02/.irbrc" RUBYOPT: "" gemset: "richarddowden" 并在我的(全球)Nginx的conf文件中,我有以下几点: http { passenger_root /home/richard/.rvm/gems/ree-1.8.7-2010.02@global/gems/passenger-3.0.2; passenger_ruby /home/richard/.rvm/wrappers/ree-1.8.7-2010.02@global/ruby; 我做错了什么愚蠢的事情? 我是否需要在应用程序的nginxconfiguration文件中复制passenger_rubyvariables? 谢谢,理查德

NGINX:我如何计算最佳编号? 工作stream程和工人连接?

我们的Web应用程序正在运行在Linode 2048服务器上(〜2048 GB的RAM) MYSQL数据库是在它自己的另一个linode上,所以这个服务器实际上只处理NGINX和Rails应用程序。 应用程序本身每个实例使用大约185976个内存(RSS)。 我们的stream量是每天<1000,页面大部分都是caching的,所以对应用程序本身的点击次数较less。 我的问题是 – 我如何计算我的应用程序的最佳NGINXconfiguration设置? 以下是目前的configuration: worker_processes 1; # pid of nginx master process pid /var/run/nginx.pid; events { worker_connections 1024; } http { access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; passenger_root /home/user/.rvm/gems/ree-1.8.7-2011.01@URTV/gems/passenger-3.0.3; passenger_ruby /home/user/.rvm/rubies/ree-1.8.7-2011.01/bin/ruby; include mime.types; default_type application/octet-stream; sendfile on; tcp_nopush on; tcp_nodelay on; # gzip settings gzip on; gzip_http_version 1.0; gzip_comp_level 2; gzip_vary […]

Apache2上的乘客 – 如何使站点显示在根目录上

我是新来的apache2和乘客设置rails应用程序,并遵循如何获得redmine(rails应用程序)设置的教程( http://xdissent.com/2010/05/04/github-clone-with- redmine / )。 这一切都很好,但访问您需要去/ redmine目录的应用程序。 我已经把它设置为redmine.local / redmine。 如果我可以只是redmine.local,那将是非常好的。 我浏览了一下我设置的apache / mongrel / passenger部分的文件,并拿出了目录的引用,但是从未如此简单。 我将不胜感激任何帮助,或链接到更多信息的初学者,我可以学习。 谢谢你的帮助! 亚当 – – 更新 – – 一些额外的细节,我有以下的文件,作为服务器的设置的一部分,我做了编辑: /etc/apache2/conf.d/redmine Include /opt/redmine/apps/redmine/conf/redmine.conf /opt/redmine/apps/redmine/conf/redmine.conf ProxyPass /redmine balancer://redminecluster ProxyPassReverse /redmine balancer://redminecluster <Proxy balancer://redminecluster> BalancerMember http://127.0.0.1:3001/redmine BalancerMember http://127.0.0.1:3002/redmine Order deny,allow Allow from all </Proxy> /opt/redmine/apps/redmine/config/mongrel_cluster.yml — prefix: /redmine log_file: log/mongrel.log port: "3001" […]

NGINX – 在同一个域下的两个不同的rails应用程序

我有两个不同的Rails(乘客)应用程序,我要在一台服务器上托pipe: somehost.com/ <– App #1 somehost.com/admin <— App #2 尝试玩'地点'指令,但没有能够运作。 有人可以build议正确的做法吗? (我宁愿共享相同的环境,只从不同的目录启动) 编辑:示例(所需)configuration 试图做一些事情: server { listen 80; server_name myhost.com; rails_env production; passenger_enabled on; location / { root /opt/main_site/public/; } location /dev { root /opt/admin_site/public/; } }

Ruby on Rails进程陷入100%的CPU

环境:Ubuntu 10.04 LTS,Passenger,Nginx 1.0.6,MySQL,Ruby 1.9.2,Rails 3.1 经过一段时间之后,服务器的CPU数量将会逐渐增加,而CPU数量将会逐渐增加 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2393 avitus 20 0 496m 381m 1392 R 100 9.4 25:10.74 Rack: /home/web … 对任何卡住的PID运行strace给出以下内容: Process 2393 attached with 3 threads – interrupt to quit [pid 2396] futex(0x8ca80e4, FUTEX_WAIT_PRIVATE, 2, NULL <unfinished …> [pid 2394] restart_syscall(<… […]

Passenger和ServerAlias不合作

我有一个运行在具有多个IP地址和多个虚拟主机的服务器上的ruby应用程序。 这是有问题的虚拟主机的configuration: <VirtualHost 10.0.0.10:80> ServerName realname.example.com ServerAlias alias.example.com DocumentRoot /var/www/sites/example/current/public <Directory /var/www/sites/example/current/public> AllowOverride all Options -MultiViews </Directory> ErrorLog /var/log/httpd/example_error_log CustomLog /var/log/httpd/example_access_log common RailsEnv production RackEnv production </VirtualHost> 当我拉起realname.example.com Ruby on Rails应用程序正常工作。 另一方面, alias.example.com只是给我Not Found: / 我相当确定正确的虚拟主机正在使用,因为alias.example.com在正确的日志文件中产生一个404。 我已经尝试将日志logging添加到Passengerconfiguration,它似乎表明Passenger正在获取请求。 注意:我无法将alias.example.comredirect到realname.example.com。 realname是使用CDN访问的,而别名是直接访问的。 任何人有任何想法,为什么这是行不通的? 我一直在b my我的头几天,而且我也有类似的QAconfiguration,按预期工作。

由于发生产卵错误,无法检出会话

我试图让我的Rails应用程序在我的VPS上工作。 我部署了我的项目,创build了数据库并迁移了它。 但是当我访问该页面时,我收到一条消息: We're sorry, but something went wrong. We've been notified about this issue and we'll take a look at it shortly. 我的nginx错误日志告诉我这个: App 12380 stdout: App 12380 stderr: *** ERROR ***: Cannot execute /home/deploy/.rvm/wrappers/ruby-2.1.2/ruby: No such file or directory (2) [ 2014-11-03 11:44:12.9549 12050/7fd1a0bb8700 Pool2/Implementation.cpp:287 ]: Could not spawn process for application /home/deploy/wisemonkeys/current: […]

nginx没有定义$ scheme

我刚刚从nginx 1.4.1升级到1.8.0(随着升级到Phusion Passenger 5.0.13)。 随着这种改变,我们configuration中的$schemevariables不再被设置。 nginxconfiguration看起来像这样: server { listen 80; listen 443; ssl on; server_name app.example.com; passenger_enabled on; passenger_env_var HTTP_X_FORWARDED_PROTO $scheme; proxy_set_header X-Forwarded-Proto $scheme; … } 当我检查Rails应用程序中的request.env['HTTP_X_FORWARDED_PROTO']或request.headers['X-Forwarded-Proto']时,我得到了文字“$ scheme”,而不是“http”或“https”。 我已经尝试了proxy_set_header和passenger_set_header并有相同的结果。