Sac*_*ngh 3 actionmailer amazon-s3 amazon-cloudfront ruby-on-rails-4 ruby-2.1
我使用Amazon S3进行文件上传,使用Cloudfront进行静态资产服务,在我的config/environments/staging.rb中,我写道
ActionController::Base.asset_host = Proc.new { |source|
if source.include?('/assets')
"d1xw0c7m8has5k.cloudfront.net"
else
"#{ENV['FOG_DIRECTORY']}.s3.amazonaws.com"
end
}
ActionMailer::Base.asset_host = Proc.new { |source|
if source.include?('/assets')
"d1xw0c7m8has5k.cloudfront.net"
else
"#{ENV['FOG_DIRECTORY']}.s3.amazonaws.com"
end
}
Run Code Online (Sandbox Code Playgroud)
但是在我的邮件中,通过rails应用程序发送,我看到image_tag src属性为空?即没有显示图像.这个设置有什么问题我无法识别,请帮助.
我通过将这些配置放在config/environments/staging.rb中的块中来解决此问题
Demo::Application.configure do
config.action_controller.asset_host = Proc.new { |source|
if source.include?('/assets')
"d1xw0c7m8has5k.cloudfront.net"
else
"#{ENV['FOG_DIRECTORY']}.s3.amazonaws.com"
end
}
config.action_mailer.asset_host = Proc.new { |source|
if source.include?('/assets')
"http://d1xw0c7m8has5k.cloudfront.net"
else
"http://#{ENV['FOG_DIRECTORY']}.s3.amazonaws.com"
end
}
end
Run Code Online (Sandbox Code Playgroud)
并且有必要提供带有action_mailer asset_host的协议,即'HTTP'
| 归档时间: |
|
| 查看次数: |
5219 次 |
| 最近记录: |