2013-03-07 68 views
15

टीएल; डीआर: साझा होस्टिंग (जैसे यूनियोरो या वन डॉट कॉम से सस्ता डोमेन) से भेजे गए मेल स्पैम में समाप्त होते हैं। कैसे ठीक करना है?जीमेल के स्पैम फ़िल्टर को बायपास करें (साझा होस्ट से PHP के साथ भेजे गए मेल)


मैं एक मेल-प्रणाली बनाया है, जो सबसे पहले, एक पीडीएफ फाइल (FPDF का प्रयोग करके) उत्पन्न whereafter यह PHP के Swiftmailer साथ एक अनुलग्नक के रूप पीडीएफ फाइल भेज दिया। यह ईमेल 130 लोगों को भेजा गया था (एक 'इनवॉइस' के रूप में)। लेकिन यह लगभग सभी के लिए स्पैम-फ़िल्टर में उतरा। मैंने स्विफ्टमेलर्स हेडर-सेटिंग्स को समायोजित करने का प्रयास किया, लेकिन बिना किसी किस्मत के। यहां तक ​​कि मेल जो मैंने पहले नहीं भेजा है (पूरी तरह से परीक्षण किया गया)। यह मेरा प्रारंभिक सेटअप था:

function sendMailEt($toEmail, $toName, $invoiceNumber){ 

require_once('includes/lib/swift_required.php'); 

$transport = Swift_SmtpTransport::newInstance('mailout.one.com', 25) 
    ->setUsername('EMAIL-ACCO[email protected]') 
    ->setPassword('THE-PASSWORD') 
    ;  

$mailer = Swift_Mailer::newInstance($transport); 

$message = Swift_Message::newInstance('FROM COMPANY') 
     ->setSubject('Thanks for signing up - COMPANY') 
    ->setFrom(array('[email protected]' => 'Company name')) 
    ->setTo(array($toEmail => $toName)) 
     ->setBody('A brief body, that explains that this is an invoice and that it has to be paid within 5 days. (written in danish)') 
     ->addPart('A brief body, that explains that this is an invoice and that it has to be paid within 5 days. (written in danish)', 'text/html') 

    ->attach(Swift_Attachment::fromPath('/URL-TO-THE-PDF-FILE.pdf')) 
    ; 

$result = $mailer->send($message); 
} 

मैं भी पीएचपी के देशी mail() समारोह के साथ ईमेल भेजने की कोशिश की, और फिर बस चालान (http://www.company-domain-name.dk/invoice/base64_encoded-name.pdf) ... एक ही परिणाम (स्पैम) से लिंक।

मैंने पूरे हेडर को स्वयं लिखने की कोशिश की। मैंने हेडर को शामिल करने के बारे में कई सारे फ़ोरम पढ़े हैं, लेकिन उन्होंने सभी अलग-अलग चीजें लिखी हैं। इसलिए मैंने कुछ अलग-अलग चीजों की कोशिश की (दोनों ईमेल जिन्हें मैंने पहले भेजा था और जिन ईमेलों में मैंने नहीं किया था) ... वही परिणाम (स्पैम)।

तब मैंने शीर्षलेख लिखने की कोशिश की जैसे MailChimps उनके शीर्षलेख में करता है। यही कारण है कि मुझे इस के लिए नेतृत्व किया:

$headers = "Reply-To: Company name <[email protected]>\r\n"; 
$headers .= "Return-Path: Company name <[email protected]>\r\n"; 
$headers .= "From: Message from Company name <[email protected]>\r\n"; 
$headers .= "MIME-Version: 1.0\r\n"; 
$headers .= "Sender: Message from Company name <[email protected]>\r\n"; 
$headers .= "Content-type: text/plain; charset=\"utf-8\"; \r\n"; 
$headers .= "X-Mailer: PHP". phpversion() ."\r\n"; 

और फिर मैं इस तरह मेल भेजने:

mail($toName . '<'.$toEmail.'>', utf8_decode('Faktura på depositumet'), utf8_decode($someMessage), $headers); 

... एक ही परिणाम (स्पैम)।

वेबस्पेस One.com के साथ है, इसलिए मैं PHPmailer का उपयोग नहीं कर सकता (क्योंकि इसे स्थापित करना है, और यह एक.com के सर्वर पर नहीं किया जा सकता है)। और मैं One.com के साथ एक एसपीएफ़ परिभाषित नहीं कर सकता।

मैं चाहता हूं कि वह ईमेल भेजने में सक्षम हो जो स्पैम पर नहीं जाता है।

यहाँ मेरी प्रश्न हैं:

  1. क्योंकि मेरे हैडर बंद है यह है, या यह कुछ है 'नीचे गहरी'?

  2. जीमेल स्पैम फिल्टर प्रतिबंध एक ईमेल (जैसे रूप [email protected]) खातों करता है या यह पूरे डोमेन पर प्रतिबंध लगाने करता है ( @example.com जैसे)?

  3. क्या कोई ब्लैकलिस्टेड ईमेल श्वेतसूची किसी भी तरह से प्राप्त कर सकता है?

* अलावा 1 *

ठीक है ... मैं अब चीजों में से एक नंबर की कोशिश की है:

  • मैं LoneWolfPR के returnpath जोड़ने की कोशिश की, की सिफारिश की तरह है, और यह नहीं था मदद नहीं
  • मैंने One.com (होस्टिंग कंपनी) से संपर्क किया, और उनके साथ पुष्टि की, कि एसपीएफ़-रिकॉर्ड या डीकेआईएम-रिकॉर्ड सेट करना संभव नहीं है। यह अभी भी नहीं है।
  • मैंने एक फॉर्म के साथ एक वेबसाइट के लिंक के साथ एक 'सदस्यता रद्द करें' लिंक स्थापित करने पर विचार किया, लेकिन मुझे उस दृष्टिकोण पर विश्वास नहीं था। मेरा मतलब है - ई-मेल के साथ चालान हर समय भेजे जाते हैं। और आप एक चालान की सदस्यता रद्द करने में सक्षम क्यों होना चाहिए ?! चूंकि यह मेरे सिर में अब तक समझ में आया है, तो मैंने केवल 20 मिनट के लिए कोशिश की (जाहिर है, परिणाम के बिना)।

यहाँ अपने वर्तमान ईमेल हैडर (Gmail से मिल गया, 'देखें मूल' पर क्लिक करके) जाता है:

Delivered-To: [email protected] 
Received: by 10.76.75.104 with SMTP id b8csp48728oaw; 
     Sat, 16 Mar 2013 17:32:56 -0700 (PDT) 
X-Received: by 10.152.116.45 with SMTP id jt13mr7897860lab.0.1363480376067; 
     Sat, 16 Mar 2013 17:32:56 -0700 (PDT) 
Return-Path: <[email protected]> 
Received: from mail-out2.b-one.net (mail-out2.one.com. [91.198.169.19]) 
     by mx.google.com with ESMTP id p10si4637427lbb.120.2013.03.16.17.32.55; 
     Sat, 16 Mar 2013 17:32:55 -0700 (PDT) 
Received-SPF: neutral (google.com: 91.198.169.19 is neither permitted nor denied by best guess record for domain of [email protected]) client-ip=91.198.169.19; 
Authentication-Results: mx.google.com; 
     spf=neutral (google.com: 91.198.169.19 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected] 
Date: Sat, 16 Mar 2013 17:32:55 -0700 (PDT) 
Message-Id: <[email protected]> 
Received: from localhost.localdomain (srv18.one.com [193.202.110.18]) 
    by mail-out2.b-one.net (Postfix) with ESMTP id F3D0B10365 
    for <[email protected]>; Sun, 17 Mar 2013 01:32:53 +0100 (CET) 
Received: from 85.218.159.219 by www.DOMAIN-NAME.dk via URL_TO_THE_SCRIPT.php with HTTP; Sun, 17 Mar 2013 00:32:53 +0000 
To: RECIEVERS_NAME <[email protected]> 
Subject: EMAIL-SUBJECT 
X-PHP-Originating-Script: 87486:NAME-OF-THE-SCRIPT-THE-E-MAIL-WAS-SENT-FROM.php 
Reply-To: COMPANY NAME <[email protected]> 
From: Besked fra COMPANY NAME <[email protected]> 
MIME-Version: 1.0 
Sender: Besked fra COMPANY NAME <[email protected]> 
Content-type: text/plain; charset="utf-8"; 
X-Mailer: PHP5.3.21 
+3

क्या आपके पास उस डोमेन के लिए एक पीटीआर DNS रिकॉर्ड है जिसे आप भेज रहे हैं? Http://emailtalk.org/MailServerConfig.aspx – DaveHogan

+0

जैसे टूल का उपयोग करके अपने डोमेन का परीक्षण करें जब मैं आपके द्वारा लिंक किए गए पृष्ठ पर डोमेन-नाम टाइप करता हूं, तो यह कहता है कि 'कोई रिकॉर्ड नहीं मिला'। यदि मैं नेविगेशन (उसी साइट पर) में 'पीटीआर चेक' चुनता हूं और डोमेन नाम डालता हूं, तो यह मुझे यह बताता है: 1 9 3.202.110.18 पीटीआर अंक srv18.one.com पर। - वह अच्छा है या बुरा है? और मैं इसे कैसे बदलूं? – Zeth

+1

क्या आप जिस डोमेन से भेज रहे हैं (ईमेल का प्रेषक) एक.com से मेल खाता है? क्या आपके पास कोई एमएक्स रिकॉर्ड नहीं है? – DaveHogan

उत्तर

0

समाधान: उपयोग Mailgun (परीक्षण नहीं) या Sendgrid (परीक्षण किया है और चमत्कार से काम करता है)। दोनों के बीच मूल्य-अंतर है, लेकिन संक्षेप में: यदि आप छोटे हैं तो मेलगुन अच्छा है; यदि आप बड़े हैं तो सेंड्रिड अच्छा है।

या तो, या MailChimps API या कुछ का उपयोग कर मेल भेजें। इसे साझा मेजबान (सबसे अधिक संभावना) पर तय नहीं किया जा सकता है। कारण नीचे है।


स्पष्टीकरण: मैं बाद में के बारे में कैसे साझा मेजबान काम अधिक सीखा है। कल्पना करें कि एक ही सर्वर पर कई अलग-अलग साइटें स्थित हैं (जैसे domain-1.org, domain-2.org और domain-3.org)। इसका मतलब है कि अगर domain-3.org बकवास-ईमेल का एक गुच्छा भेजता है, तो जीमेल (और अन्य स्पैम-फ़िल्टर) स्पैम के रूप में आईपी पता चिह्नित करते हैं। तो यदि domain-2.org फिर सामान भेजें, तो वह (शायद) कुछ आईपी पते से आएगा और इसलिए स्पैम में समाप्त होगा। साझा मेजबान वास्तव में इसके बारे में कुछ भी नहीं कर सकते हैं (और परवाह नहीं है, क्योंकि बहुत कम लोगों को यह समस्या है)। और यही कारण है कि यह बहुत सस्ता है।

सेंडग्रिड और मेलगन्स आईपी पते सभी स्पैम-फ़िल्टर द्वारा 'ठीक' के रूप में चिह्नित किए जाते हैं, और यह वह सेवा है जिसे आप उनके साथ भुगतान कर रहे हैं। वे इसे इस तरह रखते हैं, यह देखते हुए कि आप कितने ईमेल भेजते हैं उन्हें 'स्पैम' के रूप में चिह्नित किया जा रहा है। यदि यह 5% -10% या कुछ पागल कम है, तो Sendgrid/Mailgun आपके खाते को तब तक अवरुद्ध कर देगा जब तक कि आप इसे ठीक न करें (लंबी प्रक्रिया के माध्यम से जाएं, जहां आपको अपनी ग्राहक सेवा से संपर्क करना होगा और 1.000 जय-मैरी और सभी प्रकार के काम करना होगा विचित्र सामान का)।

मैंने सुना है कि यदि आपको अपना स्वयं का सर्वर मिलता है (जो कि अधिक महंगा है), और अपना मेल-सर्वर सेट अप करें, तो आपको स्पैम के रूप में चिह्नित नहीं होने के लिए वास्तव में सावधान रहना होगा। कारण स्पैम फिल्टर आजकल वास्तव में कठिन हैं ...

13

1) आम तौर पर एक ईमेल पता एक काली सूची में आसानी से नहीं जाना होगा, यह लेता है समय और/या बहुत से लोग आपको स्पैमर के रूप में टैग करने के लिए वास्तव में उस पते को ब्लैकलिस्ट में प्राप्त करने के लिए टैग करते हैं।

2) हां। एक संपूर्ण डोमेन नाम कालीसूचीबद्ध किया जा सकता है, क्योंकि स्पैमर आमतौर पर [email protected] जैसे यादृच्छिक ईमेल पते उत्पन्न करते हैं।

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

स्पैमबॉक्स से कैसे बचें?

असल में आपको कुछ हस्ताक्षरों की आवश्यकता है, और आपके DNS रिकॉर्ड्स तक बहुत सी पहुंच है, क्योंकि वहां हम अधिकांश सेटअप करने जा रहे हैं।

  • रिवर्स DNS लुकअप: समर्पित सर्वर पर या यहाँ तक कि कुछ VPS आप एक रिवर्स DNS रिकॉर्ड स्थापित करने के लिए सक्षम हैं पर, कभी कभी तुम सिर्फ एक टिकट खोलने और आईटी के लिए सेट आप के लिए। यदि आपके पास यह नहीं हो सकता है, तो अपनी होस्टिंग बदलें या स्पैमर xD के रूप में टैग किया जा रहा है। यह हेडर फर्जीज़ को प्रीपेन करना है, क्योंकि आप अपने हेडर पर सेट कर सकते हैं कि आपका ईमेल gmail.com से आता है लेकिन ऐसा नहीं है कि ईमेल सर्वर इसे जांचने का तरीका है।

  • एसपीएफ़ एक साथ ही होना आवश्यक है, तो आप एक एसपीएफ़ सेट नहीं कर सकता है, तो भी किसी भी आगे, अपने होस्टिंग बदलने पर विचार कोशिश मत करो, और आप लगभग यहाँ xD द्वारा पढ़ने रोक सकता है।

  • DKIM/डोमेन कुंजी: अधिमानतः DKIM, एक एन्क्रिप्टेड हस्ताक्षर, आप डीएनएस पर सार्वजनिक कुंजी सेट, और अपने ईमेल सर्वर में एक निजी कुंजी संग्रहीत है, जब एक सर्वर एक ई-मेल प्राप्त करता है, यह निजी है शीर्षकों में संलग्न कुंजी (आपको एक मेलसर्वर सॉफ़्टवेयर की आवश्यकता है जो विंडोज़ के लिए डीकेआईएम का प्रबंधन करता है, उदाहरण के लिए यह मेरे लिए hmailserver) के लिए काम करता है और मेल सेवा (उदाहरण के लिए जीमेल) यह देखने के लिए आपके डीएनएस रिकॉर्ड की जांच करेगा कि सार्वजनिक कुंजी मेल है या नहीं। यह लगभग एक साथ ही


होना आवश्यक है उन तीन, मूल बातें कर रहे थे अगर आप DMARC सेट करें और ADSP यह आप SpamAssassins के लिए बेहतर अंक प्राप्त होगा। Google पर कुछ स्पैम कीवर्ड सूचियों के लिए एक बेहतर स्कोर खोज प्राप्त करने के लिए और उनसे बचने का प्रयास करें, "प्रिय xxx" के साथ एक ईमेल शुरू करने जैसी कुछ चीज़ें आपके स्कोर के लिए हानिकारक हैं, अनसुलझा प्रणाली सेट करें (भले ही यह क्रोधित हो, भले ही जैसा कि आप एक स्पष्ट लिंक प्रदान करते हैं) आपको थोड़ा सा भी मदद करेगा।

इसके अलावा:

  • से अधिक (किसी भी) पृष्ठभूमि, कुछ स्पैमर्स इसका इस्तेमाल छिपे हुए पाठ में फिट करने के लिए लापरवाह एचटीएमएल और सफेद पाठ से बचें, उन फ़िल्टर होशियार से आपको लगता है कर रहे हैं।

  • विशिष्ट सिफारिशें पढ़ें। अधिकांश ईमेल सेवाओं में आपकी वेबसाइट में एक एफएक्यू या कुछ होता है, जिसमें आपको ईमेल भेजने और जंक में जाने में मदद करने के लिए कुछ सुझाव दिए जाते हैं। उनमें से कुछ आप एक सफेद सूची में आने के लिए भी आवेदन कर सकते हैं (कम से कम कुछ साल पहले, जीमेल जैसी कुछ सेवाओं पर वे अब और नहीं करते हैं)

  • यदि आप थोक में भेज रहे हैं, तो समय देखें! यदि आपके पास प्रति सेकंड एक्स ईमेल प्रति सेकंड भेजे गए हैं, तो आपको ब्लैकलिस्ट में शामिल होने की संभावना है, एक स्क्रिप्ट या किसी 1sec देरी के लिए कुछ सेट अप करने की संभावना है, देरी ब्लैकलिस्ट में आने के लिए नियति पर निर्भर हो सकती है या नहीं।


आशा है कि उन सुझावों तुम्हारी मदद, मैं हाल ही में कुछ स्पैम फिल्टर का सामना करना पड़ा और यह पिछवाड़े में एक दर्द है, यही कारण है कि मैं यह सब जानकारी पता है, कि यहां तक ​​कि सभी के बाद अपने सभी अनुसंधान xD है हस्ताक्षर और चीजें जिन्हें मैंने स्थापित किया है, कुछ ईमेल अभी भी स्पैमॉक्स में जा रहे हैं (एक छोटा प्रतिशत लेकिन यह अभी भी मुझे दर्द देता है) उपयोगकर्ताओं को संपर्क सूची में जोड़ने के लिए एकमात्र विश्वसनीय तरीका है (हस्ताक्षर और हेडर सही तरीके से रखते हुए), इसलिए यदि संभव हो तो ऐसा करने के लिए उन्हें याद दिलाएं।

+0

हम्म ... मेरा सवाल था, अगर मैं One.com के डोमेन से मेल भेज सकता हूं, जहां एसपीएफ़-रिकॉर्ड या डीकेआईएम-रिकॉर्ड को बदलना संभव नहीं है। तो आप क्या कह रहे हैं, यह संभव नहीं है, क्योंकि मैं एसपीएफ़-रिकॉर्ड या डीकेआईएम रिकॉर्ड नहीं बदल सकता? यदि नहीं, तो आप क्या सुझाव देते हैं? इस छोटे से मुद्दे (जो कि विशाल हो गया है) के कारण एक पूरे नए वेबस्पेस पर जाएं?
मैंने जोड़ा कि मेरा हेडर अब कैसा दिखता है। यह एसपीएफ़-तटस्थ, या ऐसा कुछ है, लेकिन मेरे पास कोई सुराग नहीं है अगर इसका मतलब है कि यह सेट है या नहीं (या अनुमोदित या नहीं)। – Zeth

+0

हां, इसका मतलब है कि आपको डोमेन की सेवा और/या वेब होस्टिंग को बदलना होगा। ईमेल स्पैमिंग एक छोटा सा मुद्दा नहीं है यदि आप ऐसे कई उपयोगकर्ताओं का सामना कर रहे हैं जो किसी ज्ञात नेटवर्क से नहीं हैं। तटस्थ एसपीएफ़-रिकॉर्ड का मतलब है कि सर्वर का पता चलता है कि आपके पास एसपीएफ़-रिकॉर्ड सेट है, लेकिन यह सभी जानकारी की आवश्यकता नहीं है या नहीं, इसलिए सोचें कि यह सही तरीके से सेट नहीं है। और हाँ, यह बेकार है कि आजकल आपको ईमेल जैसी ईमेल के लिए इतनी जटिल व्यवस्था की आवश्यकता है, सभी स्पैमर की वजह से ... – aleation

+0

दमन ... लेकिन धन्यवाद। इससे पहले कि मैं ऐसा करूँगा, मैं सोचूंगा कि मेरे पास कौन से अन्य विकल्प हैं। यह बहुत आसान काम है, कुछ आसान ... – Zeth

3

ध्यान में रखना एक बात है, मुझे जीमेल और याहू द्वारा अवरुद्ध किए जा रहे ईमेल के साथ परेशानी थी! php से मेल क्योंकि रिटर्न-पथ शीर्षलेख से मेल नहीं खाता था। कई सर्वरों पर यदि आप स्पष्ट रूप से हेडर में रिटर्न-पथ सेट करते हैं तो PHP मेल उस पर अनदेखा करेगा और मशीन के नाम पर वापसी पथ सेट करेगा। आपको '-f' ध्वज का उपयोग करके मेल फ़ंक्शन के 'अतिरिक्त पैरामीटर' अनुभाग में इसे मजबूर करना होगा। अब मैंने स्विफ्ट मेलर का कभी भी उपयोग नहीं किया है, इसलिए मुझे PHP के मूल मेल() फ़ंक्शन के समतुल्य नहीं पता है, लेकिन यह मेल() का उपयोग करने जैसा दिखता है;

mail($to,$subject,$message,$headers,'-f [email protected]e.com') 

यदि आप तेजी से मेलर में इसके बराबर पा सकते हैं तो यह आपकी समस्या का समाधान कर सकता है।

संपादित करें:

ऐसा लगता है कि आप वास्तव में सब पर वापसी के पथ की स्थापना नहीं कर रहे हैं। मुझे पता है कि जीमेल वास्तव में इसे छोड़ना पसंद नहीं करता है। (यकीन है कि यह अपने से मेल खाता है और) अपने Swift_Mailer संदेश को स्पष्ट रूप से इसे स्थापित करने का प्रयास करें:

$message->setReturnPath('[email protected]'); 
+1

ध्यान दें कि आपको इस '-f ... '** का उपयोग करना चाहिए, भले ही ** आप' रिटर्न-पथ 'शीर्षलेख मैन्युअल रूप से सेट करें, क्योंकि' sendmail' ('मेल() 'फ़ंक्शन द्वारा बुलाया जाता है) हेडर को स्ट्रिप कर सकता है और/या इसे एक अलग से बदल सकता है। बस यह सुनिश्चित कर लें कि दोनों जगह जहां आपने 'रिटर्न-पथ' निर्दिष्ट किया है वही हैं। –

+0

हम्म ... कोशिश की, और यह काम नहीं किया। मैंने थोड़ा सा सवाल अपडेट किया, जहां मैंने अपना पूरा हेडर शामिल किया। फिर भी सुझाव के लिए धन्यवाद। – Zeth

+0

क्षमा करें आदमी। मुझे यकीन नहीं है कि जब तक आपके पास उच्च छवि/टेक्स्ट अनुपात न हो या आपको किसी बिंदु पर ब्लैकलिस्ट किया गया हो, तब तक आपको स्पैमड क्यों मिल जाएगा। यह एक उपकरण प्राप्त करने लायक हो सकता है जो विभिन्न स्पैम फ़िल्टर के खिलाफ आपके स्वचालित ईमेल की जांच करता है। – LoneWolfPR

0

यकीन है कि आप जिस ईमेल पते के रूप में उपयोग कर रहे हैं से वास्तव में एक ईमेल पता है। मेजबान (मेरे लिए एक.com) से अपने खाता प्रबंधन में जाकर और उस खाते को जोड़कर मुझे एक ही समस्या हल हो गई है, जिसे मैं ईमेल से प्राप्त करना चाहता हूं। मैंने "मेलर" नामक एक खाता जोड़ा और पैनल के माध्यम से मैं एक ऑटो-प्रतिसादकर्ता स्थापित करने में सक्षम था, "क्षमा करें। यह ईमेल पता सर्वर कार्यों के लिए आरक्षित है"।

में

हैडर से आप तो प्रयोग करेंगे ([email protected])

होने वास्तविक ईमेल पते और ऑटो reponder चाल किया था कि। मुझे लगता है कि जीमेल सिर्फ इतना ही समझदार है कि एक ईमेल एड्रेस जिसे पहले कभी इस्तेमाल नहीं किया गया है स्पैम है। साथ ही, ईमेल पता उस डोमेन से आना चाहिए जिस पर स्क्रिप्ट रहता है ताकि जब यह कहता है कि यह वहां से है, तो यह झूठ नहीं बोल रहा है।

यहां वह कोड है जिसका उपयोग मैं अपने साझा होस्ट (ईमेलहोस्ट) से ईमेल भेजना चाहता हूं।कॉम), यह स्पैम करने के लिए जाना नहीं है (यह एक वेब फार्म से पोस्ट डेटा का उपयोग कर रहा है):

<?php 



// Contact subject 

$subject = $_POST["subject"]; 



// Details 

$message=$_POST["detail"]; 



// Email of sender 

$mail_from=$_POST["customer_mail"]; 

//Name of sender 

$name=$_POST["name"]; 
putenv("TZ=America/Phoenix"); 
$now = date("F j, Y, g:i a T"); 

$header="Reply-To: $name <$mail_from>"; 

$header .= "From: MyDomainName.com <[email protected]>"; 
$header .= "\r\n"; 
$header .= "Reply-To: $name <$mail_from>"; 
$introMSG= "Message From:".$name." <".$mail_from.">"."\r\n" 
."Sent On:".$now."\r\n"."From a web form on MyDomaiNname.com"."\r\n"."----------- 
-----------------------"."\r\n"."\r\n"; 


$to ='[email protected]'; // Domain Owners Email Address 

$send_contact=mail($to,$subject,$introMSG.$message,$header); 

$send_copy=mail($mail_from,"Copy Of:".$subject,$introMSG.$message,$header); 

// Check if message sent 


if($send_contact){ 

echo "<strong>Thanks! Your message has been sent to me.</strong>"; 

} 

else { 

echo "<strong>There was an error sending your message </strong>"; 

} 



if($send_copy){ 
echo "<strong><br>A copy of this message was sent to your email.<br>If you do not 
receive a copy please check your spam folder</strong>"; 

} 

else{ 
echo "<strong> There was an error sending a copy of this message to your email 
</strong>"; 

} 



$send_reminder=mail("[email protected]","","You Have a new contact message from 
".$name.", remember to check your spam folder.",$header); 

if($send_reminder){ 

echo "."; 

} 

else { 

echo "<br><strong>TXT Error</strong>"; 

} 

?> 
+0

मैंने अपने कोड में स्पैम फ़ोल्डर अनुस्मारक छोड़े हैं, अगर इसे कभी ध्वजांकित किया गया हो। लेकिन अब तक यह स्पैम के रूप में चिह्नित नहीं किया गया है। आशा है इससे आपको सहायता मिलेगी। –

+0

हाय एरिक। सलाह के लिये धन्यवाद। जिस ई-मेल से मैं भेज रहा हूं वह One.com के controlepanel में बनाया गया है, इसलिए ऐसा नहीं है।
मैंने अपनी स्क्रिप्ट को अपनी फ़ाइल में कॉपी/पेस्ट करने की कोशिश की, और मैन्युअल रूप से सही मान डालें। मैंने इसे सब एक JSfiddle में रखा है, ताकि आप स्क्रिप्ट देख सकें और यह क्या आउटपुट (spoiler-alert) हो, लेकिन यह अभी भी स्पैम में है - क्षमा करें (http://jsfiddle.net/F4Lwr/)। हालांकि सुझाव के लिए धन्यवाद (और सभी कैप्स कठोर नहीं हैं, लेकिन यह सिर्फ यह स्पष्ट करने के लिए है कि फ़ाइल में क्या है और क्या नहीं है)। – Zeth

0

रहे हैं कम से कम दो "स्पैमयुक्त" चीजें हैं जो आपके लेखों के बाहर कूद के लिए देख:

Message-Id: <[email protected]> 

सूचना SMTPIN_ADDED_MISSING अनुभाग? आप उचित मेलर की तरह व्यवहार नहीं कर रहे हैं और एक अद्वितीय संदेश-आईडी उत्पन्न कर रहे हैं। आप निर्देशक होने के लिए आरएफसी 5322 पढ़ सकते हैं।

Received: from localhost.localdomain (srv18.one.com [193.202.110.18]) 
by mail-out2.b-one.net (Postfix) with ESMTP id F3D0B10365 
for <[email protected]>; Sun, 17 Mar 2013 01:32:53 +0100 (CET) 

प्रारंभिक प्राप्त शीर्षलेख में एक अवैध हेल्लो होस्टनाम (localhost.localdomain) है। आपका मेलर ऐप आपको वैध मान पर सेट करने का एक तरीका प्रदान करेगा। यह PHP चल रहे मशीन के होस्टनाम को कॉन्फ़िगर करने जितना आसान हो सकता है। आरएफसी 1035 (होस्टनाम वैधता), आरएफसी 2821 (एसएमटीपी) और आरएफसी 5321 (एसएमटीपी) देखें।

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