自从换了阿里云服务器之后,我也就没有理过博客的回复评论邮件通知功能。前2天有朋友跟我说,之前评论都有邮件通知,现在怎么没有了。我想应该是没有开始支持mail()函数的语言,VPS的好处就是自己可以随便折腾。于是研究下怎么开启mail()函数,本文做个记录,方便以后可能用到。
我的阿里云服务器使用的是LNMP环境,CentOS 5.8 64位。
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 (关闭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 |
这样就成功了,如果不放心,新建一个php文件,命名为 mail.php ,可以使用下面代码测试下。
<?php |
$txt = "hello,you are a good boy!" ;
|
// 以下的邮箱地址改成你的 |
$mail = 'somebody@example.com' ;
|
// 发送邮件 |
mail( $mail , "My subject" , $txt );
|
echo 'message was sent!' ;
|
?> |
保存并上传至你的网站根目录,并在浏览器运行:
http://你的网址/mail.php
到时候你的邮箱就应该能收到邮件了,不过基本都在垃圾邮件里面,注意查看,如果收不到邮件的话,检查在操作过程时候正常,有木有重启sendmail或者重启php。一般来说,就能正常收到邮件了。
当然,功能是实现了,不过用上面的测试代码测试的时候,发现成功发一封邮件很慢很慢,要好几十秒甚至一分钟的时候。然后我在博客中发表或者回复评论的也是异常的慢,超过了用户等待的心理期限。优化这个效率势在必行了,不然只能砍掉这个功能。
网上方法很多很多,修改这个文件又是修改那个文件,感觉比较麻烦,于是找个了操作最少的修改,然后成功了。
修改/etc/hosts ,未修改之前
127.0.0.1 localhost.localdomain localhost |
修改成
127.0.0.1 localhost.localdomain localhost 主机名称 |
查看本机的主机名称的命令是: hostname
完成修改之后重启下sendmail
service sendmail restart |
此致,发表评论又回复到了几秒完成发表成功了。大家发表评论的时候看看相比慢不慢,同时能不能收到评论回复的通知邮件,感谢大家。
本文参考了 LNMP笔记:解决mail函数不能发送邮件 和 解决sendmail启动慢的问题 文章内容。
相关推荐
lnmp能用mail()函数来发邮件.docx
然而,当遇到`mail()`函数发送邮件失败的情况时,这通常是由多种原因引起的。以下是一些常见的问题及其解决方法: 1. **检查sendmail组件**:PHP的`mail()`函数依赖于系统中的sendmail组件来实际发送邮件。确保你的...
在Linux环境中,特别是用于搭建网站服务的...通过按照上述步骤操作,并根据具体情况进行调整,大部分情况下都可以成功修复邮件发送问题。如果问题依然存在,可以尝试查阅更多相关文档,或者寻求社区和专业人士的帮助。
作为邮件代理服务器: Nginx 同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器),Last.fm 描述了成功并且美妙的使用经验。 Nginx 安装非常的简单,配置文件 非常简洁(还...
### 在LNMP环境下搭建Cacti及遇到的问题与解决方法 #### 一、概述 Cacti是一款基于Web的网络流量监控工具,它利用RRDTool来存储和展示网络设备的流量统计数据。Cacti可以收集来自SNMP的流量数据,并通过MySQL...
magento2在lnmp环境下安装,xmind完全安装文档 php版本7.1+
### LNMP环境搭建详解 #### 一、LNMP概述 LNMP(Linux + Nginx + MySQL + PHP)是一种常见的网站服务器架构模式。它利用Linux操作系统作为基础平台,结合Nginx作为Web服务器,MySQL作为数据库管理系统,以及PHP...
CentOS 7 LNMP 安装 CentOS 7 LNMP 安装是指在 CentOS 7 操作系统上安装 LNMP 软件堆栈,该堆栈包括 Linux 操作系统、Nginx Web 服务器、MySQL 数据库和 PHP 编程语言。 LNMP 软件堆栈广泛应用于网站和网络应用程序...
LNMP一键安装包,linux的 centos测试成功。
本文将深入探讨这个安装包“lnmp1.8.tar.gz”中的核心组件及其重要性。 首先,我们来看Linux,这是一个开源的操作系统内核,提供了稳定和安全的基础环境,用于运行各种服务。在LNMP架构中,Linux扮演着至关重要的...
lamp和lnmp环境搭建文档,亲测可用,就是有一处mysql下载地址错了,原因是版本已下架,可更换其他版本
这个"LNMP服务软件包.zip"显然包含了搭建LNMP环境所需的组件和教程,适合那些想要在自己的服务器上部署类似环境的用户。 **Linux**: Linux是一种开源操作系统,是 LNMP 架构的基础。它提供了稳定、安全的运行环境...
在Linux环境下搭建LNMP服务,可以享受到免费、可靠和高性能的优点。 二、Nginx Nginx是一款高性能的HTTP和反向代理服务器,也是一款邮件协议代理服务器。它的特点是处理静态文件速度快,支持高并发,且内存占用少。...
**源码安装LNMP环境详解** 在Linux操作系统中,LNMP(Linux + Nginx + MySQL + PHP)是一种常见的Web服务器架构,适用于搭建高性能、高并发的网站服务。本教程将详细介绍如何在CentOS 6.8环境下通过源码安装LNMP...
lnmp环境搭建 lnmp环境搭建是指Linux、Nginx、MySQL、PHP四大组件的集成环境搭建。lnmp环境是Web开发中最常见的服务器架构之一,广泛应用于各种web应用程序和网站。 lnmp环境搭建的重要性 lnmp环境搭建是Web开发...
处理搭建好LNMP环境之后,呈现了Access Denied错误 搭建好LNMP环境之后,呈现了Access Denied错误,现已扫除掉文件权限的问题也扫除掉是Nginx的问题,而是无法解析PHP的问题。 发现网上的很多大牛都是经过Nginx的...
记录配置lnmp所需指令,适合centos7系统实测。