2019独角兽企业重金招聘Python工程师标准>>>

一、用到的函数说明

1语法: error_log(error, type, destination, headers)

2 参数说明:

error: 必需, 要记录的错误消息

type: 可选。规定错误记录的类型, 可能的看记录类型:

0 - 默认, 根据在php.ini文件中的error_log配置,错误被发送到服务器日志系统或文件

1 - 错误被发送到destination参数中的地址,只有该类型使用headers参数

2- 通过PHP debugging链接来发送错误。该喧嚣只在PHP 3 中使用

3- 错误发送到文件目标字符串

destination:可选,规定向何处发送错误消息,该参数的值依赖于"type”参数的值

headers:可选, 只有”type“为1时使用。规定附加的头部, 比如From, Cc已经Bcc。有CRLF(\r\n)分隔

注意:在发送电子邮件时,必须包含From头部。可以在php.ini文件中或这通过此参数设置

3 小知识点:

(1)写电子邮件Cc是Carbon Copy 意为复写的副本,就是我们通常说的抄送

(2)Bcc是Blind Carbon Copy ,意为隐蔽副本,密送。发给谁,除了你跟密送的对象外谁都不知道

(3)抄送与密送的区别:同时发同一篇邮件给很多人时,用抄送的话收件人就知道还有谁也收到了该邮件,用密送,则收件人就不知道还有谁同样也收到了该邮件

二、示例:

/**
 * 发送一封带有自定义错误的电子邮件
 */
 $test = 2;
 if($test > 1){
     echo "eee\n";
     error_log("A custom error has been triggered", 1, "792294380@qq.com", "From: webmaster@example.com");
     echo "eee2\n";
 }

三、问题解决

1 问题:sh: 1: /usr/sbin/sendmail: not found

2 出现原因:没有启动或安装sendmail组件

3 解决办法:

(1)安装sendemial: ubuntu系统下的安装方法之一, sudo apt-get install sendemail

(2)重启php-fpm进程: sudo /etc/init.d/php-fpm restart, 我使用了sudo /etc/init.d/php-fastcgi restart

(3)检测sendemail是否运行正常: sudo /etc/init.d/sendmail status,如果现实正在运行running就可以

可能用到的命令:

sudo /etc/init.d/sendmail start (启动sendmial)

sudo /etc/init.d/sendmail stop (关闭sendmail)

sudo /etc/init.d/sendmial restart(重启sendmail)

(4)配置php.ini, 填写sendmial的绝对路径

1>查找php的安装目录: locate php5, 例如查找到在/usr/share/中

2>填写sendmail的绝对路径:

a:打开php的配置文件php.init,例如sudo vim /usr/share/php5/php.ini-development

b:输入?sendmail_path查找定位

c:编辑修改sendmail_path配置,sendmail_path = /usr/share/sendmial -t -i

(5)重启php-fpm进程: sudo /etc/init.d/php-fpm restart

转载于:https://my.oschina.net/syc2013/blog/366428

PHP向服务器错误记录、文件或远程目标发送一个错误相关推荐

  1. scp复制本地文件到远程服务器,scp 本地文件到远程服务器

    linux中scp命令的使用 linux远程拷贝文件命令:scp(scp:secure corp)(1)从本地拷贝文件到远程服务器scp/opt/script/test.pl root@192.168 ...

  2. 复制文件到远程桌面显示未知错误

    复制文件到远程桌面显示未知错误 解决方案 这是最有效也是最常见的解决方式,同时也多用于统一网络下多台设备的文件共享 (1)创建文件夹,选择上部共享选项 (2)点击特定用户,选择要共享的人群,或者是Ev ...

  3. 服务器读取本地文件,java远程服务器访问本地文件

    java远程服务器访问本地文件 内容精选 换一换 云服务器网络异常.防火墙未放行本地远程桌面端口.云服务器CPU负载过高等场景均可能导致云服务器无法正常登录.本节操作介绍无法登录Linux弹性云服务器 ...

  4. scp 拷贝文件到服务器,scp 拷贝文件到远程服务器

    scp 拷贝文件到远程服务器 内容精选 换一换 您需要将编译后的可执行文件拷贝到目标服务器,并构造相关输入数据,从而运行工程.对于本文档的应用示例,查看$HOME/tools/projects/Cus ...

  5. steam买游戏显示服务器发生了错误,steam安装游戏时发生了一个错误是怎么回事?应该如何解决...

    steam在安装游戏时发生了一个错误(连接超时)是什么情况?安装steam游戏时发生了一个错误不知道怎么解决很头疼吧,其实,导致这个问题出现的原因百分之九十是因为网络原因所导致的问题,那么,出现这种情 ...

  6. co01设置错误消息_win10提示“调制解调器报告了一个错误”怎么办

    在使用windows10系统过程中,一位用户反馈电脑无法连接宽带连接,而且出现提示:无法连接到宽带链接 调制解调器(或其他连接设备)报告了一个错误. 这是怎么回事呢?遇到这样的情况是由于调制解调器设置 ...

  7. 添加打印机端口监视器错误_引入Bugsnag-您需要的最后一个错误监视器

    添加打印机端口监视器错误 The pursuit of building an error-free application continues. But in the meanwhile, we n ...

  8. 通过AAA服务器使用XML文件为远程接入SSL ***认证授权

    实验目的: 通过下放XML,限制不客户端SSL ***能访问的服务器. 实验拓扑: ASA配置: interface GigabitEthernet0  nameif inside  security ...

  9. FTP文件上传时的一个错误

    最近做FTP上传的时候一直提示: AlexPilotti.FTPS.Common.FTPCommandException: Cannot STOR. 在 AlexPilotti.FTPS.Client ...

最新文章

  1. Node.js session 存储的几种方法
  2. seaborn 子图_Seaborn FacetGrid:进一步完善子图
  3. 公交换乘系统c语言,公交换乘的简单实现(源码)
  4. CSS图片裁剪Clip
  5. 机器学习-多项式回归、正规方程(标准方程)
  6. Android应用程序插件化研究之DexClassLoader
  7. Hibernate 多对多关系实现
  8. linux shell脚本监控内存,shell脚本监控内嵌linux系统业务、CPU、内存等
  9. 安卓签名MD5相关说明
  10. Java 的简单内嵌浏览器--最新版jxbrowser 6.21破解
  11. CNN实现手写数字识别
  12. 英语词组instead of的用法
  13. mysql中if多重判断使用
  14. 已经更CSS《一篇文章让你从HTML零基础入门前端开发》12.22
  15. 架构设计实践思路:什么是架构,怎么画架构图?
  16. ESPRIT 2019车铣复合编程基础到五轴 走心机 视频教程
  17. 为火狐浏览器安装debug(小虫子)调试工具
  18. Telegram附近的人功能存在安全风险,可被用于探测用户位置
  19. 图计算思维与实践 (一)概览
  20. 模拟cmos集成电路(9)

热门文章

  1. 尚硅谷Linux视频学习建议贴及linux全套视频,运维版本180G高质量视频教程免费下,linux教程
  2. Linux服务器添加SVN用户
  3. 接口测试--apipost在json中如何使用mock变量
  4. 一次性杯子机器人挂件手工制作_变废为宝 ———环保笔筒制作
  5. c语言 rgb颜色渐变_这种渐变噪点的质感,咋做的?
  6. 云服务器ecs搭建环境,ECS云服务器linux下搭建开发环境
  7. 用泰勒公式求近似值_满足多个条件求最值,用这2个函数组合,写出来的公式如此简单...
  8. idle点开没反应_翟天临、靳东,一个人越是没文化越是喜欢装
  9. 电脑应用程序错误怎么办_遇到电脑桌面应用程序无法正常启动(0xc0000142)怎么办?0xc0000142解决方法...
  10. 项目遇到技术难题,领导让我假招聘套取解决方案,我没有照做,结果15天后蒙了