PHP的邮件群发系统phplist配置方法详细总结


Posted in PHP onMarch 30, 2016

本文实例讲述了PHP的邮件群发系统phplist配置方法。分享给大家供大家参考,具体如下:

phplist是一个十分不错的邮件群发系统,让我们可以很方便地群发电子杂志、小广告(^_^)等。

最近帮一个老师搭建邮件群发系统,用的就是phplist。但是网上关于搭建该系统的资料很零碎,需要费些功夫组合起来才行。而既然我已经做了这个工作,就拿出来分享吧,希望对大家有用。(另外,phplist或是phpmailer通过gmail发送邮件比通过其他邮箱发送还要麻烦一些,如果你需要通过gmail发送,在看完这篇文章讲的基本配置后,请参考《phplist及phpmailer(组合使用)通过gmail发送邮件的配置方法》来进行进一步的配置)

1.下载用最新版phplist(我用的是phplist-2.10.12)。

2.将public_html下的lists目录放到自己的web目录下(服务器上)。

3.修改lists/config/config.php,在其20行左右处修改数据库相关信息,然后在MySQL中建立与$database_name同名的空数据库(建议改数据库连接校对为utf8_general_ci,防止中文乱码)。

4.通过浏览器访问服务器上/lists/admin/,此时会提示数据库未初始化,点击“initialise database”链接,进行数据库初始化。初始化时可能会有一张表(user_blacklist_data)出现初始化错误,那张表是关于用户黑名单的,我不需要此功能,不影响使用也就不用管这个错误了。但如果你不能容忍这个错误,我这里也有一个解决方案:找到lists/admin/structure.php中的

"user_blacklist" => array(
 "email" => array("varchar(255) not null unique","Email"),
 "added" => array("datetime","When added to blacklist"),
 "index_1" => array("emailidx (email)",""),
)

修改为

"user_blacklist" => array(
 "email" => array("varchar(233) not null unique","Email"),
 "added" => array("datetime","When added to blacklist"),
 "index_1" => array("emailidx (email)",""),
)

drop掉数据库重建,并重新初始化数据库就好了。

5.下面还要进行一些基本配置:

仍然是lists/config/config.php,在190行左右处找到

define("TEST", 1);

修改为

define("TEST", 0);

因为只有非测试模式才能真正发送邮件。

然后在650行左右处找到

define("PHPMAILERHOST",'');

此为smtp服务器名,我用的是sohu的邮箱,所以改为

define("PHPMAILERHOST",'smtp.sohu.com');

往下几行可以找到

#$phpmailer_smtpuser = 'smtpuser';
#$phpmailer_smtppassword = 'smtppassword';

将其前面用于注释的“#”去掉,并填写自己发送邮件时所使用的用户名和密码,例如我会将其改为

$phpmailer_smtpuser = 'myname@sohu.com';
$phpmailer_smtppassword = 'mypassword';

如果你使用的不是gmail邮箱的话,那么应该是可以开始发送邮件了(我测试过的有sohu邮箱、qq邮箱、大学学校邮箱)——但需要注意的一点是,在发送测试邮件时目标地址必须是已经存在于你的user列表中的email地址,否则发送会失败。

如果你使用的是gmail,请参见我的另外一篇文章《phplist及phpmailer(组合使用)通过gmail发送邮件的配置方法》。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
如何在PHP程序中防止盗链
Apr 09 PHP
PHP学习笔记之二
Jan 17 PHP
JS与PHP向函数传递可变参数的区别实例代码
May 18 PHP
使用php伪造referer的方法 利用referer防止图片盗链
Jan 20 PHP
ThinkPHP框架任意代码执行漏洞的利用及其修复方法
Jul 04 PHP
php中 ob_start等函数截取标准输出的方法
Jun 22 PHP
学习php设计模式 php实现适配器模式
Dec 07 PHP
PHP实现的策略模式简单示例
Aug 25 PHP
PHPExcel 修改已存在Excel的方法
May 03 PHP
PHP文件类型检查及fileinfo模块安装使用详解
May 09 PHP
PHP 对象接口简单实现方法示例
Apr 13 PHP
如何用PHP websocket实现网页实时聊天
May 26 PHP
Laravel路由设定和子路由设定实例分析
Mar 30 #PHP
PHP的Yii框架中过滤器相关的使用总结
Mar 29 #PHP
简介PHP的Yii框架中缓存的一些高级用法
Mar 29 #PHP
深入解析PHP的Yii框架中的缓存功能
Mar 29 #PHP
PHP实现可自定义样式的分页类
Mar 29 #PHP
PHP的Yii框架中View视图的使用进阶
Mar 29 #PHP
PHP的Yii框架中创建视图和渲染视图的方法详解
Mar 29 #PHP
You might like
php网页后退不再出现过期
2007/03/08 PHP
探寻PHP脚本不报错的原因
2014/06/12 PHP
学习php设计模式 php实现模板方法模式
2015/12/08 PHP
PHP小白必须要知道的php基础知识(超实用)
2017/10/10 PHP
laravel 自定义常量的两种方案
2019/10/14 PHP
javascript qq右下角滑出窗口 sheyMsg
2010/03/21 Javascript
javascript parseInt() 函数的进制转换注意细节
2013/01/08 Javascript
js拖拽一些常见的思路方法整理
2014/03/19 Javascript
js实现图片拖动改变顺序附图
2014/05/13 Javascript
我的Node.js学习之路(二)NPM模块管理
2014/07/06 Javascript
js实现用户注册协议倒计时的方法
2015/01/21 Javascript
SpringMVC返回json数据的三种方式
2015/12/10 Javascript
JavaScript数组的定义及数字操作技巧
2016/06/06 Javascript
利用imgareaselect辅助后台实现图片上传裁剪
2017/03/02 Javascript
jQuery取得元素标签名称小结(附代码)
2017/08/16 jQuery
JS实现元素上下左右移动效果
2017/10/18 Javascript
vue引入ueditor及node后台配置详解
2018/01/03 Javascript
jQuery实现的淡入淡出图片轮播效果示例
2018/08/29 jQuery
Vue 实现手动刷新组件的方法
2019/02/19 Javascript
Python中pygame安装方法图文详解
2015/11/11 Python
Python 内置函数complex详解
2016/10/23 Python
python进程管理工具supervisor的安装与使用教程
2017/09/05 Python
python XlsxWriter模块创建aexcel表格的实例讲解
2018/05/03 Python
利用Python半自动化生成Nessus报告的方法
2019/03/19 Python
python爬虫泛滥的解决方法详解
2020/11/25 Python
基于css3的属性transition制作菜单导航效果
2015/09/01 HTML / CSS
瑜伽服装品牌:露露柠檬(lululemon athletica)
2017/06/04 全球购物
Vertbaudet西班牙网上商店:婴儿服装、童装、母婴用品和儿童家具
2019/10/16 全球购物
信息专业大学生自我评价分享
2014/01/17 职场文书
李强感恩观后感
2015/06/17 职场文书
安全教育日主题班会
2015/08/13 职场文书
学习新党章心得体会2016
2016/01/15 职场文书
学生早退检讨书(范文)
2019/08/19 职场文书
用Python提取PDF表格的方法
2021/04/11 Python
Go语言中break label与goto label的区别
2021/04/28 Golang
MySQL 原理与优化之Limit 查询优化
2022/08/14 MySQL