2010-08-12 15 views
8

का उपयोग कर बदल रहा है वहाँ मैं निम्नलिखित और यहवापसी-पथ PHPMailer

$mail->AddCustomHeader('Return-path:[email protected]'); 

काम नहीं किया था वापसी-पथ PHPMailer

का उपयोग कर परिवर्तित करने के लिए एक तरह से मैं करने के लिए निम्न कथन का उपयोग कर रहा है मेल

if(!$mail->Send()) { 
     echo "Mailer Error: " . $mail->ErrorInfo; 

    } else { 
     //Building the reporting email to report on all the mails send 
     echo "Message REPORT sent!\n"; 
    } 

मुझे ईमेल मिलता है लेकिन वापसी पथ नहीं बदलता है?

उत्तर

19

निम्नलिखित ने हल किया, मैंने प्रेषक संपत्ति को समायोजित किया और यह मेरे लिए काम किया। $mail->Sender = '[email protected]';

+0

ठीक है, यह काम करता है। यह आंतरिक रूप से रिटर्न-पथ सेट करता है। धन्यवाद –

1

इसके लिए सबसे संभावित कारण यह है कि आप जिस मेल सर्वर को भेज रहे हैं वह एक विशिष्ट रिटर्न पथ लागू करता है। यह अक्सर "होस्टेड" वेबस्पेस का मामला है।

उस स्थिति में, आपके पास बहुत सारे विकल्प नहीं हैं। अपने मेजबान से बात करने का प्रयास करें। उत्तर-पथ हेडर का उपयोग करने का

-2

इसके बजाय, इस प्रयास करें:

$mail->AddCustomHeader('Reply-to:[email protected]'); 

मैं शीर्षक करने के लिए उत्तर-का उपयोग करें और भी साझा किए गए स्थानों पर महान सफलता मिली है।

+0

क्या मैंने आपको गलत समझा? क्या आप उस पथ को बदलना चाहते हैं जिसमें असफल संदेश और चेतावनियां भेजी जाती हैं या क्या आप उस पते को बदलना चाहते हैं जिससे लोग जवाब दे रहे हैं? – SimonDowdles

+0

@webfac, अगर मेल वितरित नहीं किया गया है, तो ईमेल वापस उछालता है, मुझे यह जानने की ज़रूरत है कि यह किस पते पर उछालता है और केवल एक चीज जो मुझे लगता है कि यह उछालता है, जवाब-पथ – Roland

+0

@ रोलैंड - यह सही है हाँ, मैंने आपको गलत समझा एक पल के लिए। मुझे कोई कारण नहीं दिख रहा है कि उत्तर-पथ क्यों काम नहीं कर रहा है, इस हेडर को आपके मानक से पहले, हेडर आदि से पहले रखा जा रहा है ?? यदि ऐसा है तो जवाब बहुत अच्छा हो सकता है। – SimonDowdles

5

returnpath स्थापित करने के लिए (जुलाई 2013) के रूप में सही तरीके का उपयोग करना है:

$mail->ReturnPath='[email protected].com'; 

PHPMailer स्रोत निम्नलिखित है, जो होता है क्यों मुझे लगता है कि $ मेल> प्रेषक काम किया

if ($this->ReturnPath) { 
    $result .= $this->HeaderLine('Return-Path', '<'.trim($this->ReturnPath).'>'); 
} elseif ($this->Sender == '') { 
    $result .= $this->HeaderLine('Return-Path', '<'.trim($this->From).'>'); 
} else { 
    $result .= $this->HeaderLine('Return-Path', '<'.trim($this->Sender).'>'); 
} 
+0

इसे इसके बजाय सही उत्तर के रूप में चिह्नित किया जाना चाहिए। – cytsunny

+0

यह अब मामला नहीं है, क्योंकि phpmailer इसके कोड में विस्तारित होता है: /** * संदेश का रिटर्न-पथ। * यदि खाली है, तो यह या तो प्रेषक या प्रेषक पर सेट किया जाएगा। * var string * बहिष्कृत ईमेल प्रेषकों को कभी भी वापसी-पथ शीर्षलेख सेट नहीं करना चाहिए; * यह रिसीवर का काम है (आरएफसी 5321 सेक्शन 4.4), इसलिए यह अब कुछ भी नहीं करता है। * लिंक https://tools.ietf.org/html/rfc5321#section-4.4 आरएफसी 5321 संदर्भ * / –

संबंधित मुद्दे