简体   繁体   English

Rails 4:Carrierwave / AWS - Excon :: Errors :: SocketError / getaddrinfo:提供节点名和服务名

[英]Rails 4: Carrierwave/AWS - Excon::Errors::SocketError / getaddrinfo: nodename nor servname provided

Want to use the carrierwave gem and AWS to upload images from my app. 想要使用carrierwave gem和AWS从我的应用程序上传图像。 But when i upload the image and submit get errors 但是当我上传图片并提交获取错误时

Excon::Errors::SocketError in MoviesController#create
getaddrinfo: nodename nor servname provided

trace 跟踪

app/controllers/movies_controller.rb:30:in `block in create'
app/controllers/movies_controller.rb:29:in `create'

Parameters:

{"utf8"=>"✓",
 "authenticity_token"=>"laitXtzkMnWd/EHtVjFx0X5vE0P4kowXu84wH8fEVOQ=",
 "movie"=>{"title"=>"new ",
 "description"=>"te",
 "movie_length"=>"12",
 "director"=>"12",
 "rating"=>"12",
 "image"=>#<ActionDispatch::Http::UploadedFile:0x007fc913845fb0 @tempfile=#<Tempfile:/var/folders/s8/fd5_m1_d3436ptj9znpcy3cc0000gn/T/RackMultipart20150211-642-1ow2dmn>,
 @original_filename="IMG_0892.JPG",
 @content_type="image/jpeg",
 @headers="Content-Disposition: form-data; name=\"movie[image]\"; filename=\"IMG_0892.JPG\"\r\nContent-Type: image/jpeg\r\n">},
 "commit"=>"Create Movie"}

MoviesController#create MoviesController#创建

def create
@movie = Movie.new(movie_params)

respond_to do |format|
  **if @movie.save**<--- Error
    format.html { redirect_to @movie, notice: 'Movie was successfully created.' }
    format.json { render :show, status: :created, location: @movie }
  else
    format.html { render :new }
    format.json { render json: @movie.errors, status: :unprocessable_entity }
  end

but i thinks it something to do with my aws setup because i was able to create images without the AWS, but now since using the fog gem & AWS access & id keys it doesn't work 但我认为这与我的aws设置有关,因为我能够在没有AWS的情况下创建图像,但现在因为使用雾宝石和AWS访问和id键它不起作用

config/initialiser.rb 配置/ initialiser.rb

CarrierWave.configure do |config|
  config.fog_credentials = {
    :provider               => 'AWS',                        # required
    :aws_access_key_id      => 'AKIAIxxxxxxA',                        # required
    :aws_secret_access_key  => 'UdRxhdOHoaxxxxxxxx3I9+vIId+',
    :region => 'Ireland',                      # required
  }
  config.fog_directory  = 'moviesdemo'                     # required
end

After searching for a solution, i believe you have to add the region now , but this does not work. 在寻找解决方案后,我相信你现在必须添加该区域,但这不起作用。

gemfile 

source 'https://rubygems.org'

ruby "2.0.0"
gem 'rails', '4.1.7'
gem 'sqlite3', group: :development
gem 'sass-rails', '~> 4.0.3'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.0.0'
gem 'jquery-rails'
gem 'turbolinks'
gem 'jbuilder', '~> 2.0'
gem 'sdoc', '~> 0.4.0',          group: :doc
gem 'spring',        group: :development
gem 'bootstrap-sass', '~> 3.3.3'
gem 'rails_12factor', group: :production
gem 'pg', group: :production
gem 'carrierwave'
gem 'fog'

image.uploader rb image.uploader rb

encoding: utf-8 编码:utf-8

class ImageUploader < CarrierWave::Uploader::Base

  # Include RMagick or MiniMagick support:
  # include CarrierWave::RMagick
  # include CarrierWave::MiniMagick

  # Choose what kind of storage to use for this uploader:
  # storage :file
  storage :fog

Your region should be something like "eu-west-1" not "Ireland": 您的地区应该是“eu-west-1”而不是“Ireland”:

:region => 'eu-west-1',                    

Though you should check your region on your bucket to make sure you are picking the right one. 虽然您应该检查您的桶上的区域,以确保您选择正确的区域。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 SocketError (getaddrinfo: nodename or servname provided, or not known): Rails Mailer - SocketError (getaddrinfo: nodename nor servname provided, or not known): Rails Mailer redis local SocketError:getaddrinfo:提供nodename或servname,或者不知道 - redis local SocketError: getaddrinfo: nodename nor servname provided, or not known / sidekiq / getaddrinfo中的SocketError:提供的nodename或servname,或者未知 - SocketError at /sidekiq/ getaddrinfo: nodename nor servname provided, or not known 启动问题 - getaddrinfo:提供nodename或servname,或者未知(SocketError) - start up issue — getaddrinfo: nodename nor servname provided, or not known (SocketError) rails服务器无法启动; getaddrinfo:提供的nodename或servname,或者未知(SocketError) - rails server cannot start; getaddrinfo: nodename nor servname provided, or not known (SocketError) 启动Rails服务器时出错(getaddrinfo:提供了节点名或服务名) - Error launching rails server (getaddrinfo: nodename nor servname provided) Ejabberd / Rails“ getaddrinfo:提供的节点名或服务名,或者未知” - Ejabberd / Rails “getaddrinfo: nodename nor servname provided, or not known” getaddrinfo: nodename 或 servname 提供,或未知 - getaddrinfo: nodename nor servname provided, or not known carrierwave Excon :: Errors :: SocketError - carrierwave Excon::Errors::SocketError 宝石安装过程中出现的消息-SocketError:提供了nodename或servname - Message During Gem Install - SocketError: nodename nor servname provided
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM