php

2013-01-23 6 views
11

द्वारा भेजे गए मैं ईमेल का शक संदेश- id हैडर जीमेल खाते में php द्वारा भेजा ईमेल में संदेश-ईद के साथ इस मुद्दे क्या:php

Message-Id: <[email protected]> 

आप कृपया बता सकते हैं यह यह अजीब प्रारूप और क्या है SMTPIN_ADDED_MISSING का अर्थ यहां है? उदाहरण मैं इंटरनेट में देखा था इस युक्त भेजने डोमेन की तरह प्रारूप कुछ था, लेकिन मेरा संदेश आईडी किसी कारण से यह शामिल नहीं है:

[email protected] 

मुझे नहीं लगता कि मैं Zend_Mail में इस शीर्ष लेख निर्धारित किया है। इस हेडर को क्या उत्पन्न करता है? क्या आपको इस हेडर के साथ कोई समस्या दिखाई देती है?

उत्तर

6

Google SMTP इसे अनुपलब्ध होने पर उत्पन्न करता है। यह हेडर पहले SMTP सर्वर द्वारा सेट किया जाना चाहिए। तो आप इसे उत्पन्न नहीं करते - गूगल करता है। इसका उपयोग कई डिलीवरी को रोकने और संबंधित संदेशों को एक साथ जोड़ने के लिए किया जाता है।

संदेश आईडी शीर्षलेख सेट करने की आवश्यकता नहीं है, लेकिन यह इस शीर्षलेख को जोड़ने (ठीक किया जा सकता है) के लिए सबसे अच्छा (लेकिन सभी नहीं, केवल कॉन्फ़िगर किया गया) smtp के लिए एक अच्छा अभ्यास की तरह है। इसलिए दूसरों द्वारा इस हेडर की पीढ़ी से बचने के लिए आप इसे स्वयं उत्पन्न कर सकते हैं।

+1

मैं php से यह सेट करनी चाहिए या सर्वर SMPT सर्वर उन्हें जोड़ने चाहिए:

मैं साथ MessageId ठीक? क्या संदेश_आईडी में सर्वर का डोमेन होना चाहिए जो इस तरह के पते को भेजता है: [email protected]? – Oleg

+0

क्या आपका मतलब है कि अगर भेजे गए ईमेल में संदेश आईडी नहीं है, तो ईमेल प्राप्त करने से संदेश उत्पन्न होता है और संदेश में जोड़ा जाता है? – Oleg

+0

एसएमटीपी सर्वर इसे उत्पन्न करता है जब यह अस्तित्व में नहीं है। PHP से उत्पन्न करने की आवश्यकता नहीं है। यह संगीत में @domain भाग शामिल हैं। सिफारिशें http://www.jwz.org/doc/mid.html – clover

13

ईमेल भेजने पर उचित आउटबाउंड ईमेल क्लाइंट Message-ID शीर्षलेख उत्पन्न करना चाहिए। जब Google संदेश को अपने ईमेल सिस्टम से गुज़रता है तो Google 'अच्छा' होता है और यह आपके लिए उत्पन्न करता है, लेकिन अधिकतर नहीं, और अधिकतर स्पैम फ़िल्टर इस अनुपस्थित हेडर को एक संकेत के रूप में ले लेंगे कि संदेश स्पैम होने की अधिक संभावना है। कोई भी विकृत या अनुपलब्ध हेडर "स्पैम स्कोर" में जोड़ देगा।

यह उत्पन्न करने के लिए मुश्किल नहीं है, वह सब के लिए आवश्यक है कि यह अद्वितीय है प्रति-संदेश है:

$message-id = time() .'-' . md5($sender . $recipient) . '@' $_SERVER['SERVER_NAME']; 

या

$message-id = time() .'-' . md5($sender . $recipient) . '@yourdomain.com'; 

देता है:

[email protected] 
+0

क्या आपका मतलब है कि Message_Id की अनुपस्थिति स्पैम पर जाने की संभावना बढ़ जाती है? – Oleg

+0

क्या संदेश_आईडी में एसएमपी सर्वर का डोमेन हो सकता है जो ईमेल भेजता है? – Oleg

+0

सर्वर को स्वचालित रूप से संदेश_आईडी नहीं जोड़ता है, इसे एप्लिकेशन के रूप में जोड़ा जाना चाहिए, है ना? – Oleg

0

मैं कर रहा हूँ एक्सचेंज किए गए संदेशों को ट्रैक करने के लिए एक ही संदेश आईडी का उपयोग करना।

$mail->MessageID =sprintf('<%[email protected]%s>', $myMessageID, 'myserver'); 
संबंधित मुद्दे