在Windows 2012 上的 IIS 8.5 + PHP 环境中设置 SMTP 服务

当前项目是架设在 IIS 8.5 + PHP 5.4环境下的。需要有发送邮件的功能,最常见的方式就是使用 PHP 的 Mail 函数,但是默认情况下,此函数在 IIS 中调用是失败的,需要做如下配置:

  1. 在服务器上『添加角色和功能』中的功能界面找到『 SMTP 服务器』并添加,它需要IIS6控制台,所以安装完成后需要使用IIS6管理界面进入管理
  2. 在开启 SMTP 服务器中中继功能:方法是进入 IIS 6 管理器,在SMTP Virtual server上点右键,选择属性,再选择访问选项卡,点『中继限制』中的『中继』按钮,选择『以下列表除外』(也可以保持『仅一下列表』,此时需要在下表中添加127.0.0.1)
  3. 设置SMTP服务为自动启动,进入系统服务,着大哦『简单邮件传输协议(SMTP)』,设置该服务启动模式为自动即可

 

 

 

错误代号为800706ba时的解决方案

当开发的软件在运行时报出类似如下错误时:

检索COM类工厂中的 CLSID 为{00024500-0000-C000-000000000046}} 的组件时失败, 原因是出现以下错误: 800706ba

看到800706ba时首先就要想到是不是系统服务 “DCOM Server Process Launcher” 没启动

进入服务将其启动,十有八九就会好。

本次遇见的问题是老ERP订单系统中导出Excel时发生的。