SMTP Problem (Virtuemart)

From P&T Knowledgebase
Revision as of 14:25, 9 November 2010 by Admin (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

หมายเหตุ: ขณะที่เขียนบทความนี้ Virtuemart เวอร์ชั่นปัจจุบัน คือ 1.1.5

ปัญหาที่พบ

พบปัญหาเนื่องจากเว็บลูกค้าที่ใช้ Joomla! + Virtuemart มีการตั้งค่าเมล ให้ส่งผ่าน SMTP ของ Google Apps (หรือ Gmail นั้นเอง). ตัวเว็บหลัก Joomla สามารถส่งอีเมลได้ปรกติดี (พวกอีเมลยืนยันสมัครสมาชิก) แต่เวลาสั่งซื้อสินค้า ในระบบของ Virtuemart พบว่าไม่มีอีเมลยืนยันส่งไปให้ผู้ทำรายการสั่งซื้อ.

Summary: If Joomla! use another SMTP server (such as Google Apps), the Virtuemart will never send out email.

สรุปตรวจสอบ

หลังจากการที่ตรวจสอบพบว่า ปัญหาเกิดจากสคริปท์ของ Virtuemart เอง. ที่ไม่ได้ดึงค่า SMTP Port และ SMTP Secure ออกมาจากการตั้งค่าเมล ในตั้งค่าคอนฟิคหลัก (Main Configuration). ซึ่งเท่ากับว่าถ้ามีการตั้งค่าเมล ที่ใช้ Port อื่นนอกเหนือจาก port:25 หรือกำหนด SMTP Security ด้วย, ตัวระบบของ Virtuemart ก็จะไม่สามารถส่งอีเมลได้.

วิธีแก้ไข

แก้ไขไฟล์นี้

administrator/components/com_virtuemart/classes/ps_main.php

ค้นหาคำว่า

global $mosConfig_smtppass, $mosConfig_smtphost;

เติมตัวแปรเข้าไป 2 ตัว ให้เป็นค่าดังนี้

global $mosConfig_smtppass, $mosConfig_smtphost, $mosConfig_smtpport, $mosConfig_smtpsecure;