Postfix邮件服务器和PHP配合

Postfix邮件服务器和PHP配合,第1张

不知道您为什么要自己搭建邮件服务器+web邮箱系统。对新手而言,是一件挺有挑战性的事情。

邮件服务器一般我们会考虑网络上很多免费的,它们一般技术成熟,服务器稳定,而且都是免费的。您架设的,质量上不一定比它们更好。

而web邮箱管理系统,目前也有很多。对今天的用户而言,也没有太多吸引力,因为有很多的替代品。微软的outlook,国产的foxmail都有多年的历史,也很优秀。而现在移动互联网时代,手机App也很有优势。

我猜测,您是不是想让会员在站内发短信?这跟邮件是两码事。

或者,您只是想通过php系统,给会员的邮箱发邮件?这用不着您架设邮件服务器

当然,您可能爱上了Postfix,因为偶尔得到一个别致的领带胸针,最后为它配了一整套的西装革履也有可能。

好吧,我来回答您的问题。

1、如何对Postfix收到邮件进行管理?

您需要编写基本的两个程序,收和发。收和发的代码,比比皆是,代码并不复杂。但是您要弄清楚架构。

您的邮件服务器和邮件用户代理服务器(会员系统)在同一个主机上,但您得想成是两个服务,两个系统。就是说,您收邮件时候,读取到邮件后,将数据存到会员系统的mysql上。这个邮件在这台服务器上实际上有两份了。一般服务器软件不会用到mysql,邮件以其他形式在硬盘上存储。

发邮件,您可以通过您Postfix提供的smtp服务往外发。数据您自己通过php程序保留一份,在您会员系统的mysql里。Postfix没必要保留发出去的邮件。

2.mysql在这里面的角色是不是只管理用户的帐号密码信息?

如上所述,mysql当然要保留用户的帐号密码信息。但不仅如此,要保留发件的内容,还要放收到的邮件内容。

3.对于新手来说怎样做最容易达到预期效果。

万能的百度,一切用现成的就好。

您找到了Postfix,这是邮件服务器。这个架设也不难,网上教程比比皆是。

如果只想做邮件,不想其他的,您搜一个免费的Webmail在线邮件系统就好了。英文的较多,自己做一下汉化。PostfixAdmin可以研究下,它可以和Postfix实现mysql数据共享。

中文的,extmail比较有名,它是一个套件,什么都有,包括Postfix,拿来研究下直接用,无需二次开发。

直接调用PHP的mail()函数最方便。

mail( 收件人, 主题, 正文, [邮件头] )

发送纯文本邮件的话邮件头可以省略。

如果我的回答没能帮助您,请继续追问。

您也可以向我们团队发出请求,会有更专业的人来为您解答。

首先,我不想给phpmailer这个东西做广告,但是我确实使用的这个东西,很费解。

下载一个phpmailer类,里面主要的是三个文件class.phpmailer.php\class.pop3.php\class.smtp.php

将这三个文件放到同一个文件夹.eg:papmailer

申请一个网络邮件服务器(我用的是163服务器)

编写发送邮件代码如下

/**

     * 发送邮件

     * @param unknown_type $sendto_email        接收人Email

     * @param unknown_type $subject                邮件主题

     * @param unknown_type $body                邮件内容

     * @param unknown_type $user_name            接受人姓名

     */

    function send_email( $sendto_email, $subject, $body, $user_name){

        require_once "phpmailer/class.phpmailer.php" 

        $mail = new PHPMailer()             //创建类对象

        $mail->IsSMTP()                                         

        $mail->Host = "smtp.163.com"         // SMTP servers 使用163服务器,邮件smtp服务器 

        $mail->SMTPAuth = true               // turn on SMTP authentication 

        $mail->Username = "你申请的163邮箱帐号"                 // SMTP username 注意:普通邮件认证不需要加 @域名 

        $mail->Password = "163邮箱密码"                 // SMTP password 

        $mail->From = "发件人邮箱,可以使用上面163邮箱"                     // 发件人邮箱 

        $mail->FromName = "发件人名称,自己随意命名"                 // 发件人 

        

        $mail->CharSet = "utf8"                                // 这里指定字符集! 

        $mail->Encoding = "base64" 

        $mail->AddAddress($sendto_email,$user_name)            // 收件人邮箱和姓名 

        $mail->IsHTML(true) // send as HTML 

        // 邮件主题 

        $mail->Subject = $subject 

        // 邮件内容 

        $mail->Body = $body

        

        $mail->AltBody ="text/html" 

        if(!$mail->Send()){ 

            return $mail->ErrorInfo 

        }else { 

            return true 

        } 

    }


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/202957.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-02
下一篇2023-04-02

发表评论

登录后才能评论

评论列表(0条)

    保存