يمكنك فقط إرسال البريد الإلكتروني من خارج اسم المستخدم المحدد في smtp_settings ActionMailer؟

StackOverflow https://stackoverflow.com/questions/826095

  •  05-07-2019
  •  | 
  •  

سؤال

في ملفي ActionMailer التكوين لدي هذا:

ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {
  :address => "mail.foo.com",
  :port => 25,
  :domain => "foo.com",
  :authentication => :email,
  :user_name => "no-reply@foo.com",
  :password => "foo1234567"
}

مع هذا التكوين أن أبعث فقط من البريد الإلكتروني من عنوان البريد الإلكتروني no-reply@foo.com؟ إذا كان الأمر كذلك هل هناك طريقة لإرسال رسائل البريد الإلكتروني من عناوين أخرى؟ لدي هذا في صفي ActionMailer:

class Notifications < ActionMailer::Base

  def answered_question(faq)
    subject       'Your question has been answered'
    recipients    faq.email
    from          'Foo <no-reply@foo.com>'
    sent_on       Time.now
    content_type  "text/html"
    body          :faq => faq
  end


  def completed_order(order)
    subject        'Your order has been completed'
    recipients     order.email                                       
    from           'Foo <registrations@foo.com>'
    sent_on        Time.now
    content_type   "text/html"
    body           :order => order
  end
end

في تطوير كل شيء يعمل بها ما يرام ولكن في الإنتاج لم يتم إرسال رسائل البريد الإلكتروني completed_order بها.

وشكرا.

هل كانت مفيدة؟

المحلول

واعتقد ان أن هذا هو أكثر من قضية SMTP أنه ActionMailer. بعض من SMTP لا تتطلب اسم المستخدم / كلمات السر لإرسال البريد الصادر وحتى تتمكن من تعيين من عنوان كما تريد.

وقال ذلك، منذ كنت تواجه مشكلات بإرسال الرسائل التي لها من عنوان مختلف عن ما كنت تستخدم لمصادقة خادم SMTP، كنت اعتقد هناك قيود على مربع SMTP الذي يسمح الرسائل فقط ل يتم إرسالها إذا كان من عنوان يطابق UID مصادقة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top