ทำไมการส่งอีเมลโดยใช้ PHP จึงเป็นเรื่องยาก [ปิด]


0

นี่ไม่ใช่ปัญหาการเข้ารหัสดังนั้นฉันคิดว่า "superuser" เป็นสถานที่ที่ดีที่สุดสำหรับโพสต์นี้

ฉันพยายามส่งอีเมลโดยใช้ PHP เป็นเวลาประมาณ 1 สัปดาห์แล้วและยังไม่ประสบความสำเร็จ เรื่องราวของฉันจนถึงตอนนี้:

  1. พยายามติดต่อ บริษัท โฮสติ้งของฉันเกี่ยวกับเซิร์ฟเวอร์ SMTP / พอร์ตเพื่อใส่ "php.ini" ของฉันเพื่อส่งอีเมล พวกเขาตอบว่าฉันมีเซิร์ฟเวอร์เฉพาะที่ไม่มีการจัดการซึ่งหมายความว่าโดยทั่วไปฉันต้องจ่ายค่าบริการเพิ่มเติมหรือไป --- ด้วยตัวเอง

  2. พยายามใช้สคริปต์ PHP แบบสุ่มที่ฉันพบใน google ไม่รู้ว่ามันทำงานอย่างไร แต่พวกเขามักจะลงเอยในโฟลเดอร์จดหมายขยะและมักถูกเพิกเฉยจากระบบจดหมายขนาดใหญ่เช่น hotmail (พวกเขาไม่ได้ปรากฏตัวเลยแม้แต่น้อย เวลา)

  3. ฉันลองใช้คลาส PHPMailer ที่ใช้เซิร์ฟเวอร์ SMTP ของ Google แต่ด้วยเหตุผลบางอย่าง Google freeze และบล็อกการเข้าถึงบัญชี gmail ใด ๆ ที่ฉันทำเมื่อฉันพิมพ์รหัสผ่านลงในสคริปต์ PHP ฉันไม่สามารถใช้บัญชีนั้นอีกต่อไป

  4. ตอนนี้ฉันมีหนึ่งตัวเลือกแล้วโฮสต์เซิร์ฟเวอร์ SMTP ของฉันเองใช่ไหม แต่ไม่รู้ว่าจะทำอย่างไรและดูเหมือนจะเป็นงานที่ต้องทำมากมายฉันอาจต้องใช้เวลาหลายสัปดาห์เพื่อเรียนรู้วิธีการทำงานก่อนตัดสินใจว่ามันเป็นความคิดที่ดีหรือไม่

ทำไมการส่งอีเมล "Hello World" ง่ายๆโดยใช้ PHP นั้นฟรี พวกคุณแนะนำอะไรให้ฉันช่วยแก้ปัญหานี้? ฉันควรลองโฮสต์เซิร์ฟเวอร์ SMTP ของตัวเองหรือไม่ (ฉันมี IP แบบคงที่และโดเมนดอทคอม)


คุณบอกว่าอีเมลของคุณสิ้นสุดในโฟลเดอร์สแปม - พวกเขากำลังถูกส่ง ฉันไม่คิดว่าคุณจะส่งพวกเขาจากโดเมนที่ถูกกฎหมายดังนั้นจึงอาจพยายามทำบางอย่างเช่น Reacen@194.3.22.11 ซึ่งน่าจะเป็นสแปมสำหรับลูกค้าอีเมลทั้งหมด
cutrightjm

บล็อกรายละเอียดที่นี่: goo.gl/O1zw89
Suresh Kamrushi

คำตอบ:


3

การส่งอีเมลผ่าน php นั้นง่ายมาก ... ฉันคิดว่าคำถามของคุณเกี่ยวกับวิธีรับอีเมลที่ส่งถึงผู้รับของคุณ ...

ทำ googling ที่ "ส่งอีเมล" และตรวจสอบโพสต์นี้:

https://stackoverflow.com/questions/4960582/help-registration-emails-go-to-spam-inbox

นอกจากนี้การใช้บริการ smtp ที่มีชื่อเสียง (ชำระเงิน) สามารถช่วย ... Sendgrid, socketlabs, authsmtp ฯลฯ (ฉันใช้ทั้ง 3 ข้อ)


3
  1. สคริปต์ PHP ไม่จำเป็นต้องมีเซิร์ฟเวอร์ SMTP ในการส่งจดหมาย คุณยังสามารถส่งอีเมล "ด้วยมือ" จากบรรทัดคำสั่ง SMTP ได้รับการออกแบบมาโดยเฉพาะสำหรับสิ่งนี้

  2. อีเมลสามารถท้ายในโฟลเดอร์สแปมด้วยเหตุผลหลายประการซึ่งอาจแบ่งออกเป็นสองประเภทคือมากหรือน้อย:

    กรองตามอีเมลของตัวเอง

    อีเมล "ที่เชื่อถือได้" จะมีหัวเรื่องหัวเรื่องที่เหมาะสมเป็นอีเมลแบบหลายส่วนแทนที่จะเป็นแบบ HTML เท่านั้นมีข้อความจำนวนน้อยที่สุดและหลีกเลี่ยงภาพขนาดใหญ่และคำที่เรียก รายละเอียดที่แน่นอนขึ้นอยู่กับการกำหนดค่าตัวกรองสแปม

    สิ่งนี้จะขึ้นอยู่กับสคริปต์ PHP บางส่วน

    การกรองตามโฮสต์

    เมื่อได้รับจดหมายขาเข้าตัวกรองสแปมจำนวนมากตรวจสอบว่า IP (หรือชื่อโฮสต์หรือโดเมนผู้ส่ง) เป็นบัญชีดำ (ตรวจสอบที่นี่ ) หรือรายการที่อนุญาต (นำไปใช้เช่นที่นี่ ) ในรายการตามเวลาจริงหากโฮสต์ได้รับอนุญาตให้ส่ง อีเมลจากโดเมนนั้น ( SPF ) และหากเซิร์ฟเวอร์เฉพาะได้รับอนุญาตให้ทำเช่นนั้น ( DKIM )

  3. มีการสอนที่ผ่านมาเป็นที่นี่เกี่ยวกับวิธีการทำเช่นนี้

    เส้น

    $mail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for GMail
    

    ดูเหมือนจะสำคัญเป็นพิเศษเนื่องจากไม่ใช่ส่วนหนึ่งของบทเรียน PHPMailer ส่วนใหญ่และความล้มเหลวในการใช้ SSL อาจเป็นสาเหตุของการบล็อกบัญชี Google

  4. หากคุณโฮสต์เซิร์ฟเวอร์ SMTP บนเครื่องเดียวกับที่ส่งอีเมลผ่าน PHP คุณจะพบปัญหาเดียวกันทั้งหมด

ทำไมการส่งอีเมล "Hello World" ง่ายๆโดยใช้ PHP นั้นฟรี

สแปม มันเยอะมาก จากสถิติสแปมของ Trustwave พบว่าเกือบสามในสี่ของอีเมลทั้งหมดเป็นสแปม สิ่งนี้ต้องการการกรองที่เข้มงวดเพื่อป้องกันไม่ให้เราทุกคนจมน้ำตายในสแปม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.