linux中mail函数不能发送邮件

没有安装或启动 sendmail 组件

解决办法

我是新手,命令不熟,所以写的很详细,老鸟勿喷哦

1.重新安装 sendmail 组件,我用的是 CentOS ,使用下面的命令安装

 代码如下 复制代码

 yum install sendmail

2.使用下面的命令重启php-fpm进程

 

 代码如下 复制代码
 /etc/init.d/php-fpm restart

3.检测sendmail是否运行正常

 

 代码如下 复制代码
 /etc/init.d/sendmail status

如果显示正在运行running 就可以。

可能用到的命令

 代码如下 复制代码
/etc/init.d/sendmail start (启动sendmail)
 
/etc/init.d/sendmail stop  (关闭sendmail)
 
/etc/init.d/sendmail restart (重启sendmail)

4.配置php.ini,填写sendmail的绝对路径

使用命令打开编辑php.ini

 代码如下 复制代码

 vi /usr/local/php/etc/php.ini

输入?sendmail_path 查找定位(或者手动跳转找到sendmail_path),你会发现默认是下面的代码

 代码如下 复制代码

 ;sendmail_path =

按 i 进入编辑,将这行修改为

 代码如下 复制代码

 sendmail_path = /usr/sbin/sendmail -t -i

按 Esc 键退出编辑,输入 :wq 保存退出

5.重启php-fpm进程

 代码如下 复制代码

 /etc/init.d/php-fpm restart

时间: 2024-07-28 15:39:34

linux中mail函数不能发送邮件的相关文章

linux中mail函数不能发送邮件怎么办

没有安装或启动 sendmail 组件 1.重新安装 sendmail 组件,我用的是 CentOS ,使用下面的命令安装 yum install sendmail 2.使用下面的命令重启php-fpm进程 /etc/init.d/php-fpm restart 3.检测sendmail是否运行正常 /etc/init.d/sendmail status 如果显示正在运行running 就可以. 可能用到的命令 /etc/init.d/sendmail start (启动sendmail) /e

lnmp中mail函数不能发送邮件2种解决办法

方法一,使用sendmail组件来发邮件 1.安装 sendmail 组件 yum install sendmail 2.使用下面的命令重启php-fpm进程 /etc/init.d/php-fpm restart 3.检测sendmail是否运行正常 /etc/init.d/sendmail status 如果显示正在运行running 就可以. 可能用到的命令 /etc/init.d/sendmail start (启动sendmail) /etc/init.d/sendmail stop 

Linux中system函数的实现

#include <errno.h> #include <signal.h> #include <unistd.h> int system(const char *cmdstring) /* with appropriate signal handling */ { pid_t pid; int status; struct sigaction ignore, saveintr, savequit; sigset_t chldmask, savemask; if (cm

Linux中mkdir函数与Windows中_mkdir函数的区别_Linux

下面先来给大家介绍windows下_mkdir函数 复制代码 代码如下: #include<direct.h> int _mkdir( const char *dirname ); 参数: dirname是目录的路径名指针 返回值: 如果新目录的创建时间,这些功能中的每一个返回值 0. 在错误,则函数返回 – 1 linux下mkdir函数mode_t参数详解 复制代码 代码如下: #include <sys/stat.h> int mkdir(const char *path,

Linux中fork()函数实例分析_Linux

一.fork 入门知识  一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事.  一个进程调用fork()函数后,系统先给新的进程分配资源,例如存储数据和代码的空间.然后把原来的进程的所有值都复制到新的新进程中,只有少数值与原来的进程的值不同.相当于克隆了一个自己.  我们来看一个例子: /* * fork_test.c * version 1

php中mail()函数和SMTP工作原理及实践

一个发送E-MAIL的脚本也许是你能够在Web 站点上找到的最普通的脚本之一了,虽然它很简单,一个邮件脚本有时会令程序员非常沮丧.PHP中有一个叫做mail()的函数,它只需要知道接收方的地址 和信件主体就可以发送邮件,但是要让mail()按你的意思运行你还需要解决一些棘手的问题. 要使mail()能够运行,你必须有一 个SMTP服务器以便PHP能够连接上去.不管这个服务器对邮件程序多么重要,大多数人对它如何运转没有一星半点的概念.在本教程中,我们将揭示SMTP 的秘密并解决一些使用PHP发送邮

利用php中mail函数发送带有附件的邮件

mail函数,发送邮件 语法: mail(to,subject,message,headers,parameters) to 规定邮件的接收者 subject 规定邮件的主题.该参数不能包含任何换行字符 message 规定要发送的消息 headers 规定额外的报头,比如 From, Cc 以及 Bcc parameters 规定 sendmail 程序的额外参数. 碰到的主要问题是乱码问题,刚开始是某些客户端接收邮件时好(比如QQ邮箱,估计带自动那个识别编码)的有些不foxmail.ipad

php中mail函数发送文件失败解决办法

之前的那台服务器转移过来后,发现网站用mail()发送邮件发不了.但是发现sendmail明明已经安装. 如果没有安装sendmail可以执行  代码如下 复制代码 yum install sendmail 对了,主机名要设置一个域名格式的.例如:sangsir.com 不然重启sendmail的时候会特别久才启动起来.(否则要等很久)    代码如下 复制代码 hostname sangsir.com 接着看看sendmail是否正常运行    代码如下 复制代码 service sendma

Centos中mail函数发送邮件缓慢解决办法

因为需要经常备份网站的数据,所以了解并学习了下linux下如何通过shell来发送邮件,这里以CentOS 为例,使用mail命令来进行外部邮件的发送.mail命令的语法如下:  代码如下 复制代码 Usage: mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] to-addr ...            [-- sendmail-options ...]       mail [-iInNv] -f [name]       mail