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去除重复字的实现代码
Sep 16 PHP
php并发对MYSQL造成压力的解决方法
Feb 21 PHP
PHP常用的文件操作函数经典收藏
Apr 02 PHP
PHP函数之日期时间函数date()使用详解
Sep 09 PHP
php把session写入数据库示例
Feb 26 PHP
php中 $$str 中 "$$" 的详解
Jul 06 PHP
Symfony2在Nginx下的配置方法图文教程
Feb 04 PHP
PHP Static延迟静态绑定用法分析
Mar 16 PHP
微信公众号判断用户是否已关注php代码解析
Jun 24 PHP
PHP中仿制 ecshop验证码实例
Jan 06 PHP
PHP基于递归算法解决兔子生兔子问题
May 11 PHP
jQuery+PHP实现图片上传并提交功能
Jul 27 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运行SVN命令显示某用户的文件更新记录的代码
2014/01/03 PHP
PHPAnalysis中文分词类详解
2014/06/13 PHP
Linux+Nginx+MySQL下配置论坛程序Discuz的基本教程
2015/12/23 PHP
php+redis实现多台服务器内网存储session并读取示例
2017/01/12 PHP
PHP生成随机密码4种方法及性能对比
2020/12/11 PHP
ko knockoutjs动态属性绑定技巧应用
2012/11/14 Javascript
javascript表单验证 - Parsley.js使用和配置
2013/01/25 Javascript
Javascript基础教程之定义和调用函数
2015/01/18 Javascript
JS操作HTML自定义属性的方法
2015/02/10 Javascript
jQuery自动添加表单项的方法
2015/07/13 Javascript
JavaScript SHA1加密算法实现详细代码
2016/10/06 Javascript
详解Angular的数据显示优化处理
2016/12/26 Javascript
微信小程序 scroll-view实现上拉加载与下拉刷新的实例
2017/01/21 Javascript
Vue.js实现多条件筛选、搜索、排序及分页的表格功能
2020/11/24 Javascript
关于TypeScript中import JSON的正确姿势详解
2017/07/25 Javascript
详解react-webpack2-热模块替换[HMR]
2017/08/03 Javascript
vue webpack开发访问后台接口全局配置的方法
2018/09/18 Javascript
vue form check 表单验证的实现代码
2018/12/09 Javascript
js实现通过开始结束控制的计时器
2019/02/25 Javascript
原生js实现的移动端可拖动进度条插件功能详解
2019/08/15 Javascript
微信小程序点击列表跳转到对应详情页过程解析
2019/09/26 Javascript
Vue包大小优化的实现(从1.72M到94K)
2021/02/18 Vue.js
在Python的Flask框架中使用模版的入门教程
2015/04/20 Python
在Mac OS上部署Nginx和FastCGI以及Flask框架的教程
2015/05/02 Python
Python2.x中文乱码问题解决方法
2015/06/02 Python
利用python实现简单的循环购物车功能示例代码
2017/07/05 Python
python实现log日志的示例代码
2018/04/28 Python
Python可变参数会自动填充前面的默认同名参数实例
2019/11/18 Python
浅谈matplotlib 绘制梯度下降求解过程
2020/07/12 Python
优秀老师事迹材料
2014/02/05 职场文书
反腐倡廉标语
2014/06/24 职场文书
乡文化站暑期培训方案
2014/08/28 职场文书
2014年教师节演讲稿范文
2014/09/10 职场文书
2014年镇党建工作汇报材料
2014/11/02 职场文书
庆七一活动简报
2015/07/20 职场文书
详解Spring Security中的HttpBasic登录验证模式
2022/03/17 Java/Android