php
  • header
  • email
  • email-spam
  • 2009-04-14 17 views 13 likes 
    13

    का उपयोग करके जंक मेल के रूप में इलाज किए गए भेजे गए ईमेल को रोकें मैंने ईमेल भेजने के लिए एक PHP स्क्रिप्ट लिखी है।PHP मेल फ़ंक्शन

    मेरे स्क्रिप्ट इस तरह है:

    $headers = 'MIME-Version: 1.0' . "\r\n"; 
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
    $headers .= 'From: [email protected]' . "\r\n"; 
    
    // Email Variables 
    $toUser = "[email protected]"; // recipient 
    $subject = "testing"; // subject 
    $body = "<html><body><p> 
          Example of including an image via html \<img\> tag: 
          <br> 
          <img src='../images/profile.jpg'> 
          <br> 
          My new picture 
          <br></p></body></html>"; // content 
    
    if (mail($toUser,$subject,$body,$headers)) { 
        echo "sent"; 
    } else { 
        echo "failed"; 
    } 
    

    ठीक है, निश्चित रूप से मैं प्रेषक और प्राप्तकर्ता के लिए एक मान्य ईमेल पता का उपयोग करें। मुझे ईमेल प्राप्त हुआ, लेकिन यह जंक मेल पर जाता है। तो मैं Google शोध के लिए गया था। क्या यह मेरे "हेडर" स्क्रिप्ट समस्या के कारण है? यदि ऐसा नहीं है, तो मेरी स्क्रिप्ट को जंक मेल भेजने का कारण क्या हो सकता है? कोई भी समाधान?

    उत्तर

    8

    शायद समस्या यह है कि याहू domainkeys सत्यापन का उपयोग करता है, जो आपके आवेदन के लिए असफल हो जाएगा कि मेल वास्तव में याहू के सर्वर से नहीं आ रहा है।

    7

    जब मुझे एक बार एक ही समस्या हुई तो मैंने हेडर को देखा और पाया कि मेरा होस्ट स्पैमएसासिन का उपयोग करता है। इसलिए मैंने 'स्पैमएसासिन स्कोर' के लिए गुगल किया और एक ईमेल बनाने के गलत तरीके से (और इस प्रकार सही तरीके से) कैसे जानकारी प्राप्त की।

    उदाहरण के लिए: SpamAssassin score list

    0

    समस्या है, आप जिस सर्वर से मेल भेज रहे हैं एक याहू सर्वर नहीं है। अधिकांश स्पैम फ़िल्टर जांचते हैं कि वे मेल खाते हैं, अन्यथा यह प्रेषक को आसानी से नकली करने के लिए संभव है (और है - या था)। कभी सोचा कि आप bill.gates से स्पैम क्यों प्राप्त करते हैं microsoft.com या अपना खुद का मेल पता?

    1

    जैसा कि schnalle ने कहा, एक समस्या निश्चित रूप से यह है कि आप जिस ईमेल और ईमेल को भेजने के लिए उपयोग करते हैं, वह एसएमटीपी सर्वर अलग है .. से डोमेन का वही होना चाहिए जो सर्वर आप चल रहे हैं।

    तो, आप ईमेल भेजने के लिए याहू सर्वर का उपयोग कर सकते हैं (जांचें कि क्या वे smtp रिमोट कनेक्शन की अनुमति देते हैं, लेकिन मुझे लगता है कि वे करते हैं) smtp से कनेक्ट करते हैं, और इससे 1 समस्या हल हो जाएगी।

    वैकल्पिक सादा पाठ सामग्री के बिना एक और HTML सामग्री है, लेकिन, यह कम महत्वपूर्ण है।

    मैं तुम्हें सुझाव है phpMailer, स्वतंत्र और खुला स्रोत php वर्ग, ईमेल भेजने के लिए easly उपयोग करने के लिए (मैं इसका इस्तेमाल घटना ओ जीमेल सर्वर के माध्यम से मेल भेजने)

    0

    आप दो समाधान मिल गया है:

    • [email protected] से मेल भेजने के लिए [email protected] प्रमाण-पत्रों का उपयोग करके याहू के एसएमटीपी का उपयोग करें;
    • अपने डोमेन से अन्य का उपयोग करें;
    +2

    दोनों तरीकों का परीक्षण किया .. असफल – Peter

    5

    1. चेक मेल सामग्री

    दूसरों के रूप में संकेत दिया है यह शायद स्पैम के रूप में चिह्नित किया गया है क्योंकि आपके मेल स्पैम की तरह लग रहा है।

    मुझे यकीन नहीं है कि क्या आपने जो स्क्रिप्ट पोस्ट की है वह वह वास्तविक है जिसे आप परीक्षण कर रहे हैं।

    यदि उसके पास वास्तविक मेल बॉडी & हेडर हैं, तो स्पैमएसासिन की मानक स्थापना के माध्यम से यह संदेश चलाकर इसे 4 का स्पैम स्कोर मिलता है।9

     
    X-Spam-Status: No, score=4.9 required=5.0 tests=BAYES_50,HTML_IMAGE_ONLY_04, 
         HTML_MESSAGE,MIME_HTML_ONLY,NO_DNS_FOR_FROM,NO_RELAYS autolearn=no 
         version=3.2.5 
    

    चूंकि ईमेल निकाय के पास केवल HTML है, इसलिए अधिकांश एंटी-स्पैम समाधानों द्वारा संदिग्ध व्यक्ति के साथ संभालने का अधिक अवसर होता है।

    2. मेल सर्वर का IP

    एक अन्य पहलू यह लायक चेकिंग आपके मेल सर्वर का आईपी पता हो जाएगा। गतिशील आईपी पते से उत्पन्न होने वाले किसी भी मेल को संभावित रूप से स्पैम के रूप में माना जाएगा।

    3. ब्लॉकसूची

    यह भी जांच करता है, तो आपके आईपी पते ब्लॉक सूचियों में से एक में सूचीबद्ध है। आरंभ करने के लिए कृपया http://www.spamhaus.org/lookup.lasso के साथ अपना आईपी पता जांचें।

    1
    1. अपने सर्वर पर अपने एसपीएफ़ (प्रेषक नीति फ्रेमवर्क, एसपीएफ़ रिकॉर्ड के लिए Google) को सॉर्ट करने का प्रयास करें।
    2. सुनिश्चित करें कि आप अपने सर्वर/डोमेन पर किसी मौजूदा खाते से अपने ई-मेल भेजें।
    3. सुनिश्चित करें कि आपके पास अपने हेडर में उत्तर देने का पता है।

    ये मूलभूत चीजें हैं जिन्हें आप आजमा सकते हैं।

    2

    हेडर से में [email protected]

    0

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

    मैं इसे जीमेल में संलग्नक के साथ मेल भेजने के लिए उपयोग कर सकता हूं। हालांकि, अनुलग्नक हॉटमेल के लिए काम नहीं करते हैं। आशा है कि इस मदद करता है =)

    आप फ़ाइलों here जांच कर सकते हैं ..

    11

    इस प्रयास करें:

    $headers ="From:<$from>\n"; 
    $headers.="MIME-Version: 1.0\n"; 
    $headers.="Content-type: text/html; charset=iso 8859-1"; 
    
    mail($to,$subject,$body,$headers,"-f$from"); 
    
    +1

    आप एक स्टार @ अंजू – Coder

    2

    मैं एक ही समस्या हो रही थी:

    समस्या है कि जब आपके द्वारा निर्दिष्ट "से:" भाग से पहले सामग्री-प्रकार, मेल स्पैम के रूप में आता है।

    लेकिन यदि आप सामग्री भाग से पहले "से:" निर्दिष्ट करते हैं तो यह सामान्य मेल के रूप में आता है और आपको मुस्कान और उत्सुक बनाता है।

    1

    Content-type: text/html हटाएं और स्पैम से छुटकारा पाने के लिए $headers .= "X-Priority: 2\nX-MSmail-Priority: high"; जोड़ें। इस विधि की कोशिश की और परीक्षण किया गया है।

    3

    सर्वर आईपी को ब्लैकलिस्ट किए जाने के लिए चेक करने के लिए mxtoolbox.com का उपयोग करें। साथ ही यह वेबसाइट आपको कुछ ईमेल संबंधित चेक के साथ मदद कर सकती है।

    बेशक स्पैम फ़िल्टर के अंदर चल रहे चेक की एक लंबी सूची है। जैसा कि पहले से ही सुझाव दिया गया है, स्पैम ईमेल की स्पैम फ़िल्टर रेटिंग के बारे में विवरण के लिए ईमेल शीर्षलेखों की जांच करें।

    आशा है कि मदद करता है!

    2
        **This Works Perfectly fine for me**  
             $to="[email protected]"; 
             $subject="This is Your Message"; 
             $from = 'Sender <[email protected]>'; 
             $body='Hi '.$name.', <br/><br>Now You can See Yor main in inbox'; 
             $headers = "From: " .($from) . "\r\n"; 
             $headers .= "Reply-To: ".($from) . "\r\n"; 
             $headers .= "Return-Path: ".($from) . "\r\n";; 
             $headers .= "MIME-Version: 1.0\r\n"; 
             $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; 
             $headers .= "X-Priority: 3\r\n"; 
             $headers .= "X-Mailer: PHP". phpversion() ."\r\n"; 
             mail($to,$subject,$body,$headers); 
    
    संबंधित मुद्दे