本文實(shí)例講述了PHP的郵件群發(fā)系統(tǒng)phplist配置方法。分享給大家供大家參考,具體如下:
phplist是一個(gè)十分不錯(cuò)的郵件群發(fā)系統(tǒng),讓我們可以很方便地群發(fā)電子雜志、小廣告(^_^)等。
最近幫一個(gè)老師搭建郵件群發(fā)系統(tǒng),用的就是phplist。但是網(wǎng)上關(guān)于搭建該系統(tǒng)的資料很零碎,需要費(fèi)些功夫組合起來(lái)才行。而既然我已經(jīng)做了這個(gè)工作,就拿出來(lái)分享吧,希望對(duì)大家有用。(另外,phplist或是phpmailer通過(guò)gmail發(fā)送郵件比通過(guò)其他郵箱發(fā)送還要麻煩一些,如果你需要通過(guò)gmail發(fā)送,在看完這篇文章講的基本配置后,請(qǐng)參考《phplist及phpmailer(組合使用)通過(guò)gmail發(fā)送郵件的配置方法》來(lái)進(jìn)行進(jìn)一步的配置)
1.下載用最新版phplist(我用的是phplist-2.10.12)。
2.將public_html下的lists目錄放到自己的web目錄下(服務(wù)器上)。
3.修改lists/config/config.php,在其20行左右處修改數(shù)據(jù)庫(kù)相關(guān)信息,然后在MySQL中建立與$database_name同名的空數(shù)據(jù)庫(kù)(建議改數(shù)據(jù)庫(kù)連接校對(duì)為utf8_general_ci,防止中文亂碼)。
4.通過(guò)瀏覽器訪問(wèn)服務(wù)器上/lists/admin/,此時(shí)會(huì)提示數(shù)據(jù)庫(kù)未初始化,點(diǎn)擊“initialise database”鏈接,進(jìn)行數(shù)據(jù)庫(kù)初始化。初始化時(shí)可能會(huì)有一張表(user_blacklist_data)出現(xiàn)初始化錯(cuò)誤,那張表是關(guān)于用戶黑名單的,我不需要此功能,不影響使用也就不用管這個(gè)錯(cuò)誤了。但如果你不能容忍這個(gè)錯(cuò)誤,我這里也有一個(gè)解決方案:找到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掉數(shù)據(jù)庫(kù)重建,并重新初始化數(shù)據(jù)庫(kù)就好了。
5.下面還要進(jìn)行一些基本配置:
仍然是lists/config/config.php,在190行左右處找到
define("TEST", 1);
修改為
define("TEST", 0);
因?yàn)橹挥蟹菧y(cè)試模式才能真正發(fā)送郵件。
然后在650行左右處找到
define("PHPMAILERHOST",'');
此為smtp服務(wù)器名,我用的是sohu的郵箱,所以改為
define("PHPMAILERHOST",'smtp.sohu.com');
往下幾行可以找到
將其前面用于注釋的“#”去掉,并填寫自己發(fā)送郵件時(shí)所使用的用戶名和密碼,例如我會(huì)將其改為
$phpmailer_smtpuser = '[email protected]';$phpmailer_smtppassword = 'mypassword';
如果你使用的不是gmail郵箱的話,那么應(yīng)該是可以開(kāi)始發(fā)送郵件了(我測(cè)試過(guò)的有sohu郵箱、qq郵箱、大學(xué)學(xué)校郵箱)——但需要注意的一點(diǎn)是,在發(fā)送測(cè)試郵件時(shí)目標(biāo)地址必須是已經(jīng)存在于你的user列表中的email地址,否則發(fā)送會(huì)失敗。
如果你使用的是gmail,請(qǐng)參見(jiàn)我的另外一篇文章《phplist及phpmailer(組合使用)通過(guò)gmail發(fā)送郵件的配置方法》。