在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时发生的。

在Windows上的python3.3安装MySQLdb的故事

在Windows平台上安装python还算可以,但是安装MySQLdb就麻烦多了,如果碰巧你跟我一样用的是python 3.3那就更是折腾了。

到本文发布的时候,mysql-python官方还没有发布支持python 3 的版本。最新版本是支持 python 2.7 的 1.2.4b4 (http://sourceforge.net/projects/mysql-python

所以折腾了我一下午,好好的周日就光玩这个了,趁着还记得赶紧记下来。

操作系统: Windows 8
python:python 3.3.1 (最好是32位)

首先需要下载安装如下软件

MinGW http://sourceforge.net/projects/mingw/files/

  1. 安装MinGW
  2. 设置系统环境变量path,添加“D:\MinGW\bin”到path中
  3. 打开D:\python\Lib\distutils\cygwinccompiler.py 搜索“-mno-cygwin” 将其删除,否则一会儿会报“unrecognized command line option ‘-mno-cygwin’”这个错误

注:如果不想修改python系统文件也可以下载较早版本的MinGW(例如 http://sourceforge.net/projects/mingw/files/Installer/mingw-get-inst/mingw-get-inst-20110530/

MySQL Connector/C 6.0.2(32位) http://dev.mysql.com/downloads/connector/c/

  1. 安装Connector/C
  2. 打开“C:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include\config-win.h” 搜索ssize_t和mode_t,将有它们两个的行注释起来
  3. 把C:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\lib\opt\libmysql.dll复制到Windows的System32目录 复制到D:\python\Lib\site-packages即可

MySQLdb-1.3
https://github.com/farcepest/MySQLdb1/tree/MySQLdb-1.3

打开在setup.cfg,在其中加入:

[code lang=”python”]
[build]
compiler = mingw32
[/code]

就是让系统使用Mingw编译而不使用本机的VC 2010编译
打开setup_windows.py,将

[code lang=”python”]
libraries = [ ‘kernel32’, ‘advapi32’, ‘wsock32’, client ]
[/code]

修改为

[code lang=”python”]
libraries = [ ‘kernel32’, ‘advapi32’, ‘wsock32′,’libmysql’ ]
[/code]

[code lang=”python”]extra_compile_args = [ ‘/ZL’ ][/code]

修改为

[code lang=”python”]extra_compile_args = [ ” ][/code]

用python执行python setup.py build
如果成功则继续执行python setup.py install
完成后进入D:\python\Lib\site-packages,将新生成的文件夹,名字贼长那个改为“MySQLdb”

进入python命令行执行import MySQLdb,检查是否有错误

经过以上步骤终于可以在Windows平台上安装支持 python 3 的 mysql-python 了

感谢以下文章,启发甚大:
http://blog.csdn.net/zuoniu/article/details/7929213
http://hi.baidu.com/cenxcen/item/131f8608db97071eeafe38b8