首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何创建基于PHP的电子邮件系统?

问如何创建基于PHP的电子邮件系统?
EN

Stack Overflow用户
提问于 2015-11-27 14:44:23
回答 2查看 7.4K关注 0票数 2

目前,我正在使用cPanel管理邮箱。我在cPanel中配置了邮箱,以便将电子邮件传输到PHP脚本。我使用cPanel只是为了这个目的,所以我想摆脱所有这些设备。

我只需要:

  • 创建一个电子邮件服务器(从这里我想我需要一些PHP库/应用程序)
  • 在电子邮件服务器中创建电子邮件帐户/邮箱
  • 对于邮箱收到的每封电子邮件:运行一个PHP脚本来处理字节

这些PHP扩展依赖于预先存在的电子邮件服务器和帐户,因此,这些是不够的。

据我所研究,显然我需要通过PHP命令行,使用CLI或CGI,不确定是哪一个。

我在使用LAMP CentOS的VPS中工作,也许有一个开源的PHP应用程序或库可以在这里实现,只用于特定的任务。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-11-27 15:28:56

很抱歉这么说,但是你的计划根本没有任何意义。

原因:

要能够接收和访问电子邮件,您必须至少实现一台功能齐全的网络服务器:接收SMTP服务器和访问邮箱的附加服务器,如IMAP4服务器或类似服务器。加上ssl或tls加密、身份验证和和.

  • PHP并不是一种适合于这样一个项目的语言。
  • 这样的计划意味着的工作量可能被你低估了。如果您查看现有的实现,您会发现它们都是相当大而复杂的软件包。我想说的是,实现这么多的东西将需要一个真正好的程序员几个月,如果不是几年。

请不要搞错了,但是我的印象是,你还没有完全理解电子邮件交换是如何工作的,以及需要做什么。

相反,我建议您通过获得一些可以使用的独立系统来处理这个领域,可能是租用一个虚拟私有服务器,包括一个域名和一个静态IP地址。请注意,一些带有php的with空间是不够的。然后安装典型的包,一些Linux操作系统,可能是Postfix服务器、Dovecot服务器以及它们所需要的一切。然后配置这些东西,如果你真的成功了,并且能够通过这个设置实际接收消息,那么现在是回到这个问题的时候了。我希望有两件事:

  1. 通过那个实验你会学到很多东西
  2. 你会同意你目前的计划是不合理的。
票数 5
EN

Stack Overflow用户

发布于 2015-11-27 14:53:05

对于邮箱中的电子邮件,我建议使用IMAP。在这里,电子邮件存储在服务器上,IMAP协议允许您访问服务器上的电子邮件。

必须在服务器上启用IMAP并使用imap_open函数1。

从php.net中摘录的一个例子是:

代码语言:javascript
复制
<?php
$mbox = imap_open("{imap.example.org:143}", "username", "password");

echo "<h1>Mailboxes</h1>\n";
$folders = imap_listmailbox($mbox, "{imap.example.org:143}", "*");

if ($folders == false) {
    echo "Call failed<br />\n";
} else {
    foreach ($folders as $val) {
        echo $val . "<br />\n";
    }
}

echo "<h1>Headers in INBOX</h1>\n";
$headers = imap_headers($mbox);

if ($headers == false) {
    echo "Call failed<br />\n";
} else {
    foreach ($headers as $val) {
        echo $val . "<br />\n";
    }
}

imap_close($mbox);
?>

在创建新帐户方面,如果您有一个用于在邮件服务器上创建帐户的HTML输入表单--一个非常麻烦的解决方案是使用POST变量提交POST变量来创建一个新帐户,这是关于这个主题的一个很好的堆栈溢出答案。

当您在注册表格上提交信息时,实际上是提交了一系列的POST变量。如果您不熟悉cURL或HTTP请求的基本知识,这可能需要一些阅读。

这可能涉及使用cURL登录到您为邮件服务器设置的管理框架的管理面板。如果您是邮件服务器上的根用户,则有更好的解决方案。

1

2

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33959800

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档