php에 있는 mail 기능은 이메일을 보내는 기능이 내장되어 있지만 실제로 메일 기능을 사용하여 이메일을 보내고 싶다면 시스템에 sendmail 구성 요소를 설치해야 합니다. 메일이 이메일을 보낼 수 없는 문제가 발생하면 해결 방법을 살펴보겠습니다. 이전 서버를 이전한 후 웹사이트에서 mail()을 사용하여 이메일을 보낼 수 없는 것을 발견했는데, sendmail이 설치되지 않은 경우 sendmail을 실행할 수 있는 코드는 다음과 같습니다.
yum install sendmail
그런데 호스트 이름은 jb51.net과 같은 도메인 이름 형식으로 설정해야 합니다. 그렇지 않으면 시간이 오래 걸립니다. sendmail을 다시 시작할 때 시작하세요. 그렇지 않으면 시간이 오래 걸립니다. 코드는 다음과 같습니다.
hostname .net
그런 다음 sendmail이 정상적으로 실행되고 있는지 확인하세요.
service sendmail status
실행 중이 아니면 시작할 수 있습니다. .상태를 변경하여 시작합니다. 그런 다음 웹 환경에서 php.ini를 편집하고
phpinfo를 생성합니다. lnmp를 사용하기 때문입니다.vi /usr/local/php/etc/php.ini
다시 검색:;sendmail_path =, 편집하려면 다음으로 대체:
sendmail_path = /usr/sbin/sendmail -t -i
내 시스템의 기본값은 다음과 같습니다.
sendmail_path = /usr/sbin/sendmail -t -i -f
-f를 제거하면 메일 기능이 비활성화되는 것 같습니다. 메일 기능이 정상으로 돌아갑니다. 그런 다음 일반적으로 service php restart는 service php입니다. -fpm restart. Apache에서는 다음과 같습니다: service httpd restart
PHP 스크립트 테스트 코드를 공유해 드리겠습니다. 코드는 다음과 같습니다.
<?php $send = mail('your Email @lisizhang.com', '邮件标题', '测试邮件内容,如果收到此邮件,表示mail函数成功启用!'); if($send){ echo 'true'; }else{ echo 'false'; } ?>
반환 결과가 false이면 이메일이 전송되었음을 의미합니다
실패했습니다. true를 반환하면 이메일이 성공적으로 전송되었음을 의미합니다.위 내용은 PHP의 메일 기능이 이메일을 보내는데 실패하면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!