Tag: 乘客

切换到Capistrano后,Passenger上的Rails应用程序上的Bundler :: GemfileError

我有一个使用Apache生产的Phusion Passenger运行的rails应用程序。 当我以前手动部署(通过SSH进入服务器并获取最新更新等)时,一切都有效,但我最近切换到Capistrano,让我的团队成员的生活更轻松。 现在,当我尝试访问该站点时,Passenger会抛出以下错误: Exception PhusionPassenger::UnknownError in PhusionPassenger::Rack::ApplicationSpawner (There was an error in your Gemfile, and Bundler cannot continue. (Bundler::GemfileError)) 如果我运行rails console bundle exec rails console production ,并运行app.get(‘/’) ,它会返回状态代码200.因此,只有当请求通过Passenger时才会抛出此GemfileError。 我总是使用rvm和我的每个rails应用程序使用gemsets,但是Capistrano现在将软件包安装在/var/www/mywebsite/shared/bundle 。 在我看来,像rvm和capistrano在处理gem的方式上存在冲突,但这并不能解释为什么它只会在这种环境中产生GemfileError。 乘客错误 错误信息: There was an error in your Gemfile, and Bundler cannot continue. (Bundler::GemfileError) 例外类: PhusionPassenger::UnknownError 应用程序根: /var/www/3eadmin/current 回溯 # File Line Location […]

无法加载此类文件 – capistrano / setup(LoadError)

我关注https://gorails.com/deploy/ubuntu/16.04 最初我有一个版本的capistrano 3.8.1,我的问题最初是: nicoara@ubuntu:~/deploy_test$ cap install STAGES=production /home/nicoara/.rbenv/versions/2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require’: cannot load such file — capistrano/cli (LoadError) 我用“gem install rvm-capistrano”来解决这个问题,它安装了另一个版本的capistrano,2.15.6,现在的错误是: nicoara@ubuntu:~/deploy_test$ cap install STAGES=production: `require’: cannot load such file — capistrano/setup (LoadError) 在这一点上我无法解决。

使用Passenger / Capistrano部署到Nginx服务器后未显示的图像

嗨我正在使用Capistrano将我的第一个Rails应用程序部署到Ubuntu 16服务器,除了图像没有在生产环境中显示外,一切都很顺利。 在生产服务器上,映像位于以下路径中: /myapp/current/public/assets 但是如果我在浏览器中看到这个,我的破碎图像链接给了我这个(见图片),这是标题图像的断开链接。 奇怪的是, /myapp/current/public/assets中有一个.svg文件,它在浏览器中完美显示,在下图中是显示的路径 这是我的Capfile # Load DSL and set up stages require “capistrano/setup” # Include default deployment tasks require “capistrano/deploy” set :rbenv_type, :user # or :system, depends on your rbenv setup set :rbenv_ruby, ‘2.3.1’ require ‘capistrano/rbenv’ require ‘capistrano/bundler’ require ‘capistrano/rails’ # Load custom tasks from `lib/capistrano/tasks` if you have any defined […]

单个IP上的多个rails应用程序(nginx +乘客)

我正在寻找在一台服务器上提供多个rails应用程序的方法。 我上传了其中一个应用程序,它运行正常。 但是,只要我为新应用程序创建nginx配置,它就会崩溃第一个。 我找不到合适的指南。 如果您有任何建议,请分享。

Rails 3.2带有乘客无限错误的资产管道

最近我将我的应用程序迁移到了3.2.1,看起来我是另一个在资产管道方面苦苦挣扎的开发人员。 一切看起来都不错,我的资产被编译并显然服务。 在我的文档的源代码中,我可以看到: 链接工作得很好。 但是,我的js或css实际上都没有加载。 我在apache日志中实际看到的唯一错误是: cache: [GET /] miss 我调整了我的apache配置,包括: XSendFile On … Header unset Last-Modified Header unset ETag FileETag None ExpiresActive On ExpiresDefault “access plus 1 year” 我与卡斯特拉诺和乘客一起部署。 有没有人遇到过这个问题?

Rails找不到的Bash命令

乘客说 : Ruby on Rails应用程序无法启动 … 未找到命令’exiftool’(MiniExiftool :: Error) 当我使用ssh登录并在任何目录中键入exiftool时,该命令正常工作。 我在.bash_profile和.bashrc中都有以下行 export PATH=$PATH:$HOME/bin 是否有可能Rails(MiniExiftool插件)无法识别bash命令? 我该如何解决这个问题?

乘客遇见库未加载错误:liblzma.5.dylib

我正在尝试与乘客一起运行铁轨。 我安装了AWS SDK 1和2 gem: gem ‘aws-sdk-v1’ gem ‘aws-sdk’, ‘~> 2’ 当我使用AWS sdk运行时: s3 = AWS::S3.new 我遇到错误: LoadError: dlopen(/Users/XXXX/.rbenv/versions/1.9.3-p551/lib/ruby/gems/1.9.1/gems/nokogiri-1.6.6.2/lib/nokogiri/nokogiri.bundle, 9): Library not loaded: /usr/local/lib/liblzma.5.dylib Referenced from: /Users/XXXX/.rbenv/versions/1.9.3-p551/lib/ruby/gems/1.9.1/gems/nokogiri-1.6.6.2/lib/nokogiri/nokogiri.bundle Reason: Incompatible library version: nokogiri.bundle requires version 8.0.0 or later, but liblzma.5.dylib provides version 6.0.0 otool -L告诉我版本是8.1.0 $ otool -L /usr/local/lib/liblzma.5.dylib /usr/local/lib/liblzma.5.dylib: /usr/local/lib/liblzma.5.dylib (compatibility version 8.0.0, current version […]

phusion乘客是否使用分叉,如果是,在哪里设置after_fork配置?

phusion乘客是否使用分叉? 如果是这样,我应该在哪里设置after_fork配置, 如Heroku对unicorn的建议 (re:使用Rails设置PostGIS)? 来自Heroku的文档: 此外,如果在重新建立连接的地方使用独角兽或任何其他进程分叉代码 ,请确保将适配器覆盖到postgis。 例如: # unicorn.rb after_fork do |server, worker| if defined?(ActiveRecord::Base) config = Rails.application.config.database_configuration[Rails.env] config[‘adapter’] = ‘postgis’ ActiveRecord::Base.establish_connection(config) end end

如何在生产中使用rails服务器?

我想,一般来说它更像是PHP(它加载到内存中,执行并为每个连接而死)。 或者它像Node.js(单个实例保留在内存中并接受所有请求)

错误的错误:未定义的方法`有?’ for Sass :: Util:Module

加载网页时,我收到Phusion发出的以下错误: There was an error while trying to load the gem ‘compass-rails’. Gem Load Error is: undefined method `has?’ for Sass::Util:Module Did you mean? hash Hash Backtrace for gem load error is: /Volumes/Data/htdocs/zetcho/vendor/bundle/gems/compass-0.12.2/lib/compass/sass_extensions/functions/urls.rb:5:in `has?’ 指定位置的代码是: module Compass::SassExtensions::Functions::Urls def self.has?(base, instance_method) Sass::Util.has?(:instance_method, base, instance_method) end 我的gem文件包含: # Bundle edge Rails instead: gem ‘rails’, github: ‘rails/rails’ gem […]