Pertanyaan Setel header email agar memantul email menuju ke alamat tertentu


Dari aplikasi rel kami, kami mengirimkan beberapa email yang dihasilkan sistem dengan alamat 'dari' yang disetel ke noreply@ourdomain.com. Jika pemantulan ini mereka dikirim kembali ke alamat ini oleh server email kami. Namun, yang saya ingin lakukan adalah tidak memantul email yang dikirim kembali ke noreply@ourdomain.com tetapi ke alamat lain, seperti bounced@ourdomain.com.

Apakah ada tajuk atau sesuatu yang bisa saya atur di email yang akan mencapainya, tanpa saya harus pergi dan menyelidiki keanehan dari server email kami? Kami mengirim surat menggunakan exim jika itu relevan.

sorakan, maks


32
2018-03-14 19:38


asal


Jawaban:


Saya baru saja menemukan ini sendiri di exim4 setelah a banyak membaca tentang konfigurasi exim.

Pertama, Anda ingin aplikasi Anda menambahkan tajuk berikut:

Return-Path: <bounced@yourdomain.com>

Bekerja dengan atau tanpa tanda kurung. Exim akan menambahkan tanda kurung pada akhirnya.

Kedua, ini adalah bagian yang sulit. Exim selalu ingin mengganti alamat Jalur-Kembali saya: dengan pengguna unix yang mengirimnya. Anda dapat menggunakan / etc / email-addresses di Ubuntu untuk mengatur email statis untuk pengguna aplikasi web Anda, tetapi ini masih mengabaikan header Jalur-Kembali. Berikut adalah cara saya mengubah konfigurasi exim saya untuk menghormati Jalur Kembali dari aplikasi web:

Di area konfigurasi utama tambahkan:

return_path_remove = false

Di konfigurasi router yang sesuai (misalnya dnslookup):

dnslookup:
  # ...
  errors_to = ${if def:h_return-path: {${address:$h_return-path:}} fail}
  headers_remove = return-path
  no_more

Sekarang exim harus menyalin alamat header Return-Path pada level amplop dan menghapus header Return-Path yang asli.

Saya mencoba banyak arahan konfigurasi lain dan ini adalah satu-satunya cara yang benar-benar bekerja untuk saya.


9
2017-08-12 22:54



Kesalahan-Untuk tidak lagi digunakan, sehingga server email biasanya akan mengabaikan tajuk ini - sebagian besar server akan terpental ke 'pengirim amplop'.

Ini adalah alamat email yang dikirimkan oleh klien surel Anda sebagai bagian dari koneksi ke SMTP server (tidak harus alamat Dari - meskipun biasanya sama).

Aku tidak tahu apa-apa tentang Rails, tapi aku menemukannya ini - Meskipun, sejauh yang saya tahu, Back-Path direset oleh MTA untuk mencocokkan informasi MAIL FROM dari klien, jadi sepertinya Anda tidak dapat benar-benar mengaturnya.

Saya pikir satu-satunya hal yang dapat Anda lakukan adalah mengatur alamat bouncing di server Anda.


4
2018-04-27 23:11



Berikut solusinya:

Di tajuk email Anda dapat mengatur:

From: "From Name" <from_name@ourdomain.com>
Reply-To: noreply@ourdomain.com

Errors-To: <bounced@ourdomain.com>
Return-Path: <bounced@ourdomain.com>

3
2018-03-29 14:48



3 tahun terlambat, tetapi kalau-kalau ada orang lain datang dengan cara ini. Return-Path adalah header kanan tetapi, seperti yang ditunjukkan James Garriss di atas, ia harus ditempatkan di sana oleh situs yang melakukan pengiriman akhir. Anda tidak bisa begitu saja menempel pada diri Anda sendiri.

Jika Anda menulis email dengan menghubungkan langsung ke server SMTP maka ini mudah - MAIL perintah berisi jalur kembali. Jika Anda mengirim

MAIL FROM:<me@foo.com>

ke server SMTP lalu memantul akan dikembalikan ke me@foo.com.

Jika Anda tidak membangun SMTP, dan Anda menjalankan MTA (mis. Exim / etc), maka Anda harus menemukan saklar baris perintah untuk MTA Anda. Untuk sendmail, -f me@foo.com msgstr "set alamat pengirim", dan ini berakhir sebagai Return-Pathpada surat terkirim terakhir, dan me@foo.com akan mendapatkan bounce (saya melakukan persis ini untuk email yang dihasilkan secara otomatis). Saya belum mencoba ini di exim, tetapi memiliki opsi yang persis sama, dan seharusnya berhasil.


3
2017-11-03 13:39



Return-Path tajuk ditulis oleh menerima server, bukan oleh server pengiriman. Dan sesuai dengan RFC 5321, itu sama dengan alamat yang diberikan MAIL FROM perintah.

Bahkan jika Anda mengaturnya Return-Path header sendiri, server penerima akan menimpanya.

Sekarang, inilah masalahnya, alamat di MAIL FROM perintah dan alamat di From tajuk bisa berbeda. Pengguna penerima tidak melihat MAIL FROM alamat. Mereka hanya melihat From alamat tajuk.

Jadi, jika Anda ingin mengabaikan bouncing atau ingin mereka pergi ke alamat tertentu, Anda harus menggunakan alamat itu di MAIL FROM perintah.

Namun dalam From header, Anda cukup gunakan noreply@yourdomain.com - pengguna akan melihat alamat ini.


Untuk menyederhanakan sedikit lebih banyak, Anda mengirim email dari handle_bounce@yourdomain.com alamat. Server penerima akan mengirim bouncing ke alamat ini.

Untuk menampilkan pengguna Anda noreply@yourdomain.com alamat bukan handle_bounce... alamat, atur From tajuk di email mentah pesan MIME ke noreply... alamat.


Saya baru saja mendapat tak ada jawaban email dari Bitbucket. Inilah pesan mentahnya:

Return-Path: <bounce-1231860_HTML-1209402755-103116181-132689-225@bounce.mailer.atlassian.com>
From: "Atlassian Bitbucket" <noreply@mailer.bitbucket.org>
To: <me@hostname.com>
Subject: Continuous delivery, without the headache.
Date: Wed, 28 Feb 2018 12:40:53 -0600
MIME-Version: 1.0
Reply-To: "Atlassian Bitbucket" <reply-fe3915707665057b741c71-1231860_HTML-1209402755-132689-225@mailer.atlassian.com>

... message body ...

Seperti yang Anda lihat, Return-Path adalah alamat yang didedikasikan untuk menangani bouncing. Tetapi From alamat adalah a noreply@... surat. Apa artinya email ini sebenarnya dikirim oleh alamat penanganan pentalan ini, bukan oleh alamat noreply.

Anda juga bisa melihat Reply-To tajuk, yang didedikasikan untuk menangani balasan, jika pengguna membalas email tanpa balas. Balasan itu mungkin langsung dibuang.


2
2018-03-02 12:04