10/10/2018, 10:10
[TUT] PHP - Gửi email từ localhost bằng Mecury Mail
Hi all,
Việc gửi mail từ localhost sẽ trở nên dễ dàng với bộ công cụ XAMPP.
http://www.apachefriends.org/en/xampp.html
Ở đây tôi trình bày việc cấu hình gửi email từ localhost sử dụng công cụ MercuryMail có sẵn trong XAMPP.
Sau khi tải về, bung nén chẳng hạn vào E:xampp => Bạn có E:xamppxampphtdocs.
Mở thư mục E:xamppxamppMercury Mail, tìm file MERCURY.INI và dán đè code sau vào:
Đặc biệt chú tâm đoạn code sau:
Bạn có thể thay những thông số này bằng Gmail của bạn nếu cần.
Sau đó nhớ dùng XAMPP Controller start Mercury Mail (ở dưới cùng trong 4 cái), và test thử các hàm mail như trình bày ở:
PHP - Gửi email định dạng HTML có attachment
Đây là hướng dẫn cơ bản, chi tiết hơn sẽ đến khi mình có nhiều thời gian hơn. Bạn nào có thời gian thì viết giúp hướng dẫn đầy đủ nhé.
Thân mến.
Việc gửi mail từ localhost sẽ trở nên dễ dàng với bộ công cụ XAMPP.
http://www.apachefriends.org/en/xampp.html
Ở đây tôi trình bày việc cấu hình gửi email từ localhost sử dụng công cụ MercuryMail có sẵn trong XAMPP.
Sau khi tải về, bung nén chẳng hạn vào E:xampp => Bạn có E:xamppxampphtdocs.
Mở thư mục E:xamppxamppMercury Mail, tìm file MERCURY.INI và dán đè code sau vào:
Code:
# MERCURY.INI generated by Mercury Setup # # # Sample Bindery Mode MERCURY.INI file (in fact, the one I use on # my production server). This one implements most of the possible # switches for each module, but you can edit it to do less if you # wish. All the fields shown below are described in the file # MGUIDE.HLP which is supplied in the Mercury archive. # # Anything after a '#' to the end of the line is a comment and # is stripped out before parsing. Trailing and leading whitespace # is also stripped before parsing. Many sample commands have been # left in this file commented out for reference purposes. # [General] myname: localhost # Canonical name for this server timezone: +0000 # Time Zone to add to date fields file_api: 1 # Use the file api instead of queues mailqueue: E:XAMPPXAMPPMERCURYMAILQUEUE # Where mail should be put for delivery smtpqueue: E:XAMPPXAMPPMERCURYMAILQUEUE # Where the SMTP client should look for mail newmail_path: E:XAMPPXAMPPMERCURYMAILMAIL~N # Where to find the users' WinPMail mailboxes. [Protocols] E:XAMPPxamppMERCURYMAILmercurys.dll E:XAMPPxamppMERCURYMAILmercuryc.dll E:XAMPPxamppMERCURYMAILmercuryp.dll E:XAMPPxamppMERCURYMAILmercuryd.dll E:XAMPPxamppMERCURYMAILmercuryx.dll E:XAMPPxamppMERCURYMAILmercuryh.dll E:XAMPPxamppMERCURYMAILmercuryw.dll E:XAMPPxamppMERCURYMAILmercuryi.dll [Mercury] failfile: E:XAMPPxamppMERCURYMAILMercuryFAILURE.MER # Delivery failure notification template confirmfile: E:XAMPPxamppMERCURYMAILMercuryCONFIRM.MER # Delivery confirmation template aliasfile: E:XAMPPxamppMERCURYMAILMercuryALIAS.MER # System-wide alias file synfile: E:XAMPPxamppMERCURYMAILMercurySYNONYM.MER # User synonym database listfile: E:XAMPPxamppMERCURYMAILMercuryLISTS.MER # List of lists logwidth: 30 # Width of address fields in logfile retpath: 1 # Do/Don't use 'return-path' for errors maxhops: 30 # Used to detect mailing loops gullible: 0 # If NZ, don't validate 'From' fields bitnethost: cunyvm.cuny.edu # Relay host for '.bitnet' rewrites poll: 10 # Seconds between queue polling cycles scratch: E:XAMPPxamppMERCURYMAILScratch # Where we can write temp files returnlines: 15 # How many lines of failed messages to return postmaster: Admin # NetWare UIC of postmaster broadcast: 1 # Yes, we want broadcast notifications, but receipts: 0 # ... no broadcasts for receipt confirmations PM_notify: 1 # Do/Don't send errors to the postmaster change_owner: 1 # Change message ownership to recipient auto_tzone: 1 # If NZ, obtain timezone information from OS LogLevel: 15 # System message reporting level LogMax: 100 # Maximum number of system messages to store RetryPeriod: 30 # Period between job retries (minutes) MaxRetries: 16 # Maximum number of times a job can fail TwoPasses: 1 # If NZ, process submission queue in 2 passes Autoaddress: 0 # If NZ, auto-generate user addresses based on name Daily_exit: 0 # If NZ, auto-restart each day after maintenance No_Areply: 0 # If NZ, disable automatic replies system-wide Alt_Forward: 0 # If NZ, allow alternate forwarding specification Maint_hour: 2 # Hour for daily maintenance (24-hour clock) Maint_min: 0 # Minute for daily maintenance Retry_Mode: 0 # If NZ, use progressive backoff for queue retries Local_DSNs: 1 # If NZ generate Delivery Status for local users only DSN_time1: 10800 # Seconds deferred before first DSN is sent DSN_time2: 86400 # Seconds deferred before second DSN is sent DSN_time3: 259200 # Seconds deferred before third DSN is sent Host_in_title: 0 # If NZ, show hostname in system tray and taskbar [MercuryC] Host : smtp.gmail.com Failfile : E:XAMPPxamppMERCURYMAILMercuryFAILURE.MER HELO : JMB Poll : 30 Scratch : E:XAMPPxamppMERCURYMAILMercury ReturnLines : 15 Timeout : 30 ESMTP : 1 Server_Port : 465 SMTP_Username: mercurymailtester@gmail.com SMTP_Password: testandmad SMTP_ConnFlags : 8 POP3_Auth : 0 Log_Verbose : 0 [MercuryE] Poll : 15 Timeout : 60 # Session_logging : o:mailmercurymelogs # Session_logmode : 1 # Nameservers : 139.80.64.1 [MercuryD] scratch : E:XAMPPxamppMERCURYMAILMercury # Timeout : 30 # Poll : 120 # How often to check hosts for new mail (seconds) [MercuryS] Debug : 1 Logfile : E:XAMPPxamppMERCURYMAILLogsMERCURYS.LOG Timeout : 30 Relay : 1 Strict_Relay : 0 Allow_Illegals : 0 SMTP_Authentication : 0 Compliance_Settings : 0 Maximum_Failed_Rcpts : 4 Max_Relay_Attempts : 4 SSL_Mode : 0 ST_Blacklisting : 288 No_VRFY : 0 SMTP_ConnFlags : 0 [MercuryP] Scratch : E:XAMPPxamppMERCURYMAILMercury Stack : 32768 Mark_Read : 1 SSL_Mode : 0 Login_Disabled : 0 Timeout : 60 [MercuryX] # Cmd_Delay: 10 # Cmd_Wait: 1 # IE4_Dialling: 0 # Use_ETRN: 1 # Clients_only: 1 # Sunday: 0800,1800,3,15,30,60 # Monday: 0830,2100,5,15,60,60 # Tuesday: 0830,2100,5,15,60,60 # Wednesday: 1500,1900,2,30,5,30 # Thursday: 0900,1900,2,30,0,0 # Friday: 0830,2100,5,15,60,60 # Saturday: 1031,1035,2,45,-1,0 # [Groups] # testgroup : TESTGRP [Domains] localhost: localhost localhost: localhost.net localhost: localhost.org localhost: localhost.com [Maiser] Maiser: Maiser # 'Username' of mail server account Helpfile: E:XAMPPxamppMERCURYMAILMercuryMAISER.HLP # Help sent on failed maiser requests Lookupfile: E:XAMPPxamppMERCURYMAILMercuryMAISER.LKP # Format file for the 'lookup' command Send_dir: E:XAMPPxamppMERCURYMAILMercurySENDABLE # Directory for the 'send' command Logfile: E:XAMPPxamppMERCURYMAILLogsMAISER.LOG # Mail server log file Notify: E:XAMPPxamppMERCURYMAILMercuryTMP # Dir. for pending 'notify' commands NoList: N # If 'Y', disable the 'list' command Local_only: Y # If 'Y', local 'notify' commands only [MercuryH] Logfile : E:XAMPPxamppMERCURYMAILLogsMERCURYH.LOG # Addressbook : \CLIOSYSSYSTEMMERCURYPH.PMR # MOTD : \CLIOSYSSYSTEMMERCURYPH-MOTD.TXT # Administrator : postmaster@clio.pmail.gen.nz Timeout : 30 [MercuryI] Scratch : E:XAMPPxamppMERCURYMAILSCRATCH Timeout : 120 Server_Port : 143 Idle_Timeout : 1800 SSL_Mode : 0 Login_Disabled : 0 [MercuryB] Scratch : E:XAMPPxamppMERCURYMAILSCRATCH # Logfile : o:mail mpmercuryb.log Timeout : 120 Server_Port : 80 # Session_logging : o:mailmercurymblogs # Session_logmode : 0 Idle_Timeout : 1800 # URL_Base : enter_your_domain_here [Groups] [Rewrite] [Statistics] StatFlags: 0 # Statistical reporting settings STF_Hours: 24 # How often to write stat log files STM_Hours: 24 # How often to e-mail stat log files
Code:
[MercuryC] Host : smtp.gmail.com Failfile : E:XAMPPxamppMERCURYMAILMercuryFAILURE.MER HELO : JMB Poll : 30 Scratch : E:XAMPPxamppMERCURYMAILMercury ReturnLines : 15 Timeout : 30 ESMTP : 1 Server_Port : 465 SMTP_Username: mercurymailtester@gmail.com SMTP_Password: testandmad SMTP_ConnFlags : 8 POP3_Auth : 0 Log_Verbose : 0
Sau đó nhớ dùng XAMPP Controller start Mercury Mail (ở dưới cùng trong 4 cái), và test thử các hàm mail như trình bày ở:
PHP - Gửi email định dạng HTML có attachment
Đây là hướng dẫn cơ bản, chi tiết hơn sẽ đến khi mình có nhiều thời gian hơn. Bạn nào có thời gian thì viết giúp hướng dẫn đầy đủ nhé.
Thân mến.
Bài liên quan
Thành công thì chia sẻ, khúc mắc YIM.
Thân mến.
http://www.pmail.com/downloads_nz_t.htm
Tải cái Mercury Mail và cài lên thư mục, nhớ cài full và sửa các thông tin trong file INI của nó ở phần Mercury C (đơn giản nhất là copy đè và replace all đường dẫn).
Thử như vậy đã, có tin mừng thì thông báo.
Thân mến.
hihi, chạy hoàn hảo lắm. Rất good! Thư gửi đi đúng inbox, không vào spam Ai có ý tưởng hay có 1 database email rộng lớn, đề nghị share cho mọi người đi spam chơi
PS (nói chơi ai làm thiệt bị gì em hem chụi trách nhiệm đâu đóa)
http://agriviet.com/mailnong.php
http://bacong.net/myblog/programming...%AB-localhost/