Rails uygulamasında environments/
dosyasında aşağıdaki parametreleri içeren yeni bir hazırlama ortamı oluşturdum:Farklı ortamlarda e-postaların günlüğe kaydedilmesi ve gönderilmesi
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
Ancak, sistem bir e-posta oluşturduğunda, gönderilmek yerine staging.log
dosyasına yazdırılır. SMTP ayarlarım diğer ortamlarda düzgün çalışıyor. E-postaların gerçekten gönderilmesini sağlamak için hangi yapılandırmayı kaçırıyorum?
Düzenleme: Evet, hazırlama kutusu, erişimi olan bir SMTP sunucusu için geçerli bir yapılandırma ile ayarlanır. Sorun SMTP ayarlarında değil gibi görünüyor (eğer öyleyse, günlüklerde hatalar alamaz mıyım?), Ancak Rails yapılandırmasıyla. Uygulama hala SMTP'den geçmenin aksine, e-postaları günlük dosyasına yönlendiriyor ("Gönderilen posta: ...").
Düzenleme # 2: Gerçekte doğru bir şekilde gönderilen e-postalar gibi görünüyor, sadece günlüğüne de yazıyorlar. Postayı başka bir adrese yönlendirmek için sanitize_email
gemini kullanmaya çalışıyorum ve bu işe yaramıyor gibi görünüyor, bu yüzden e-postaların dışarı çıkmadığını düşündüm. Bu yüzden, bu problemi çözdüğümü düşünüyorum, ancak ActionMailer'ın ayarlarında hangi e-postaların gönderilip gönderilmediğini, günlük dosyasına mı yoksa her ikisine mi girdiğini hala merak ediyorum.
Düzenleme # 3:sanitize_email
ile ilgili sorun, ActionMailer::Base.local_environments
'ye yeni aşamalandırma ortamını eklemem için bana kaynatıldı. Bu soruyu herkesin son soruma cevap verip veremeyeceğini açıklayacağım (ActionMailer'in e-postalarının gönderilip gönderilmeyeceğini, günlük dosyasına veya her ikisine birden mi geçtiğini belirler)
Hazırlama kutunuzda çalışan bir SMTP sunucusu var mı? – jdl
localhost, port 25 ve bazı etki alanlarıyla config.action_mailer.smtp_settings'i ayarladınız mı? – marko