rails 上 ruby 的电子邮件中损坏的静态图片链接
Broken static image links in emails with ruby on rails
我在 gmail 中有损坏的图像,我没有做任何花哨的事情,就像这样:
image_tag "logo.png"
但路径是相对路径或以 //
开头,而不是 https://
或 http://
。
我最后做了:
在config/application.rb
中:
if ENV["HOST"].present?
config.action_mailer.default_url_options = { host: ENV.fetch("HOST") }
end
if ENV["BASE_URL"].present?
config.action_controller.asset_host = ENV.fetch("BASE_URL")
config.action_mailer.asset_host = ENV.fetch("BASE_URL")
end
在config/initializers/default_url_options.rb
中:
if ENV["HOST"].present?
Rails.application.routes.default_url_options[:host] = ENV.fetch("HOST")
ActionMailer::Base.default_url_options = { host: ENV.fetch("HOST") }
end
与:
HOST=socializus.app
BASE_URL=https://socializus.app
# HOST=localhost:3000
# BASE_URL=http://localhost:3000
我在 gmail 中有损坏的图像,我没有做任何花哨的事情,就像这样:
image_tag "logo.png"
但路径是相对路径或以 //
开头,而不是 https://
或 http://
。
我最后做了:
在config/application.rb
中:
if ENV["HOST"].present?
config.action_mailer.default_url_options = { host: ENV.fetch("HOST") }
end
if ENV["BASE_URL"].present?
config.action_controller.asset_host = ENV.fetch("BASE_URL")
config.action_mailer.asset_host = ENV.fetch("BASE_URL")
end
在config/initializers/default_url_options.rb
中:
if ENV["HOST"].present?
Rails.application.routes.default_url_options[:host] = ENV.fetch("HOST")
ActionMailer::Base.default_url_options = { host: ENV.fetch("HOST") }
end
与:
HOST=socializus.app
BASE_URL=https://socializus.app
# HOST=localhost:3000
# BASE_URL=http://localhost:3000