资产同步宝石错误:(
我开始的第一个错误与unf
gem 有关,所以我添加gem "unf", "~> 0.1.3"
到我的 gemfile 并再次尝试。不走运 :( 经过更多研究后,我可能对与我的 aws 存储桶相关的另一个设置有问题。我的 dns 是通过 route53 托管的,我想使用自定义域来服务我的资产。这意味着我的存储桶看起来assets.domain.com
不仅仅是一个简单的名称。当我尝试运行rake assets:precompile
它时,它会因错误而中止,rake aborted!
hostname "assets.domain.com.s3-us-west-1.amazonaws.com" does not match the server certificate (OpenSSL::SSL::SSLError)"
但该错误似乎是错误的。为了使用您自己的子域,即资产。我读到存储桶必须设置为静态网站。这意味着 url看起来assets.domain.com.s3-website-us-west-1.amazonaws.com
似乎与错误代码不匹配。
我在这里错过了一个设置吗?也许我疯了...谢谢你的帮助。
我的 production.rb 设置
# Enable serving of images, stylesheets, and JavaScripts from an asset server.
AssetSync.config.run_on_precompile = true
config.action_controller.asset_host = "http://assets.domain.com"
config.assets.prefix = "/data"
config.assets.enabled = true
config.assets.compile = true
config.assets.initialize_on_precompile = true
# Generate digests for assets URLs.
config.assets.digest = true
我当前的初始化文件:
if defined?(AssetSync)
AssetSync.configure do |config|
config.fog_provider = 'AWS'
config.aws_access_key_id = ENV['MY_S3_ID']
config.aws_secret_access_key = ENV['MY_S3_SECRET']
# To use AWS reduced redundancy storage.
# config.aws_reduced_redundancy = true
config.fog_directory = ENV['MY_S3_BUCKET']
# Invalidate a file on a cdn after uploading files
# config.cdn_distribution_id = "12345"
# config.invalidate = ['file1.js']
# Increase upload performance by configuring your region
config.fog_region = ENV['MY_S3_ENDPOINT']
#
# Don't delete files from the store
# config.existing_remote_files = "keep"
#
# Automatically replace files with their equivalent gzip compressed version
# config.gzip_compression = true
#
# Use the Rails generated 'manifest.yml' file to produce the list of files to
# upload instead of searching the assets directory.
# config.manifest = true
#
# Fail silently. Useful for environments such as Heroku
# config.fail_silently = true
end
end