Solution to the failure of php email sending: 1. Configure the appropriate SMTP server address and port information in php.ini; 2. Use the sendmail program to send emails.
The operating environment of this article: linux5.9.8 system, PHP7.1 version, Dell G3 computer
php email What to do if it fails?
PHP error in sending mail
Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in
Solution:
Use of PHP's Mail function The SMTP service sends E-Mail. In other words, you need to configure the appropriate SMTP server address and port information in php.ini. If you need to send E-Mail on this machine, that is,
SMTP = localhost smtp_port = 25
, you need to configure the SMTP service on your own machine. You can try to open the SMTP service of IIS.
Explain that the mail() function in php uses the sendmail program to send emails, and sendmail -t -i is generally a built-in program of the linux/unix system, but the windows system does not have this program. Therefore, you cannot directly use the mail() function to send emails.
Use mail() to send emails under windows
1. The email sending system must have SMTP service. Install the "SMTP Service" component under "Windows Server 2003":
A. "Add and Remove Windows Components"->"Application Server"->"Internet Information Services (IIS)" click "Details".
B. Select "SMTP Service" to install.
2. Set up SMTP:
A. Open "Internet Information Services (IIS) Manager" and find the "Default SMTP Virtual Server".
B. Right-click on the service and select "Properties".
C. In the pop-up "Default SMTP Virtual Server Properties" box, click the "Access" entry and select the "Authentication" button.
D. In the pop-up "Authentication" box, only select "Anonymous Access" and leave nothing else selected.
E. Return to the "Access" table item, select the "Relay" button, click the "Add" button in the pop-up "Relay Restriction" box, and add the IP address of 127.0.0.1.
3. Modify "php.ini":
---------------------------------
[mail function] ; For Win32 only. SMTP = localhost smtp_port = 25 ; For Win32 only. sendmail_from = me@example.com
---------------------------------
4. Run this program and log in to “$toaddress” Display the mailbox to check the mail.
$toaddress = 'xuzhang@mascatv.com'; $subjects = 'test the php mail'; $mailcontent = 'Onlu test the php mail!'; $fromaddress = 'From: me@localhost.com'; mail($toaddress,$subjects,$mailcontent,$fromaddress);
Recommended learning: "PHP Video Tutorial"
The above is the detailed content of What to do if php email fails to be sent. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Dreamweaver CS6
Visual web development tools

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

SublimeText3 Linux new version
SublimeText3 Linux latest version

Zend Studio 13.0.1
Powerful PHP integrated development environment

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.
