Windows Server 部署REDCap(八)— 邮件功能

Configuration Check 中 Secondary tests 第 2 项异常就是REDCap系统没有使发送邮件功能:

%title插图%num

Windows Server 部署REDcap(四):新增账户并设置登录验证方式 曾介绍过手动发送邮件的方法,但是如果邮件比较多,比如发送电子邮件调查问卷链接,手动发送可能就比较吃力甚至难以完成,所以 REDCap 系统的发送邮件功能是需要设置的:

发送邮件可以自己搭建SMTP邮件服务器,也可以借助第三方邮件服务器。自己搭建SMTP邮件服务器太复杂,我们乖乖用 163 邮箱 SMTP服务发送 REDCap 邮件。我们的策略是使用Sendmail 程序借助 163 SMTP 邮箱服务器实现 REDCap 发送邮件功能,发送邮件流程可以这样理解:

%title插图%num

根据这个流程,我们需要:

获取网易163邮箱 SMTP 服务器授权码

下载并上传sendmail程序到服务器

配置php和Sendmail


1,获取163 邮箱 SMTP服务客户端授权码

网易 163 邮箱可以开通 SMTP 服务,使用第三方登录邮箱收发邮件,但是登录密码不是邮箱密码,需要使用网易邮箱第三方登录专用密码 — 授权码。

申请网易163邮箱并登录:

%title插图%num

开启授权码:

%title插图%num

手机验证

%title插图%num

设置授权码

%title插图%num

记住授权码

后续Sendmail要使用这个授权码登录 163 邮箱,保存并记住这个授权码。

%title插图%num

2,上传sendmail程序到服务器

在安装XAMPP时如果安装了sendmail模块,可以直接跳转到步骤 3。

如果安装XAMPP没有Sendmail模块,则需要下载并上传到服务器主机。

下载Sendmail for windows

上传sendmail程序到服务器

解压在 C 盘根目录。

%title插图%num

3,配置php和Sendmail

配置php.ini

打开C:\xampp\php\php.ini,找到以下内容并设置:

[mail function] For Win32 only. SMTP = localhost smtp_port = 465

; For Win32 only.

sendmail_from = 你的163邮箱地址

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").

sendmail_path = ""C:\sendmail\sendmail.exe" -t"

%title插图%num

配置sendmail.ini

打开C:\sendmail\sendmail.ini, 找到以下内容并设置 :

smtp_server = smtp.163.com

smtp_port = 465

smtp_ssl=ssl

default_domain=163.com

auth_username=你的163邮箱地址

auth_password=你的163邮箱授权码

force_sender=你的163邮箱地址

%title插图%num

%title插图%num

4,测试邮件功能

​REDCap Send-It 模块用来发送带有附件邮件。如果 Send-It模块可以发送邮件,那么REDCap 系统的邮件功能就没有问题,所一我们使用Send-It 模块测试邮件发送功能:

Send-It 模块

%title插图%num

添加附件并发送:

%title插图%num
%title插图%num

查收邮件

查收邮件会收到REDCap系统使用 163 邮箱发来的 2 封 邮件,一封是附件下载链接,另一封是下载密码:

%title插图%num
%title插图%num

根据提示点击链接,输入密码下载附件即可。

REDCap 系统现在可以发送邮件,基本功能都具备了,后续还要完善一些小的数据库、存储等细节,离成功更进一步!

7 Responses

  1. 罗好命说道:

    作者你好! 我在配置redcap的时候遇到了一点问题。当时是ssl还没有配置好!就想先弄发邮件的功能,php文件和sendmail文件配置好后,进入redcap send-it 功能时,from处的邮件地址是不是会显示成为我们更改时候的地址?按照你的记录设置之后,发现邮件没有办法按照设定的邮箱地址发送,想来求助下你QAQ ,是不是ssl的配置会不会影响后续需要配置的项目?

    • HearSir说道:

      ssl不会影响发邮件功能,应该还是邮件功能设置的原因。

      • 罗好命说道:

        按照步骤配置的邮件发送功能
        试着发送了一下 发现 文件是能正常上传到服务器的 但是 邮件发不出去 QAQ 不知道是哪里出错了。。。

        • HearSir说道:

          用的那个邮箱?看看你的邮箱里面有没有已发邮件,没有的话还是配置的问题。

          • 罗好命说道:

            用的是网易邮箱 邮箱里边没有已发送邮件0.0 那应该还是配置问题 我再多试试……

  2. 罗好命说道:

    惊了 是我眼拙了 我把要填在force_sender的邮箱地址填到force_recipient去了。
    PS:感谢大佬的博文,给我带来了超多帮助!!

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注