gpt4 book ai didi

cakephp - 如何通过电子邮件控制Web应用程序?或者如何通过发送电子邮件来运行php脚本?

转载 作者:行者123 更新时间:2023-12-02 15:31:24 24 4
gpt4 key购买 nike

我想使用 CakePHP 框架在 php 和 mysql 上运行 Web 应用程序。为了将使用该网站的阈值保持在很低的水平,我不想使用用户名/密码的标准登录。 (我也不想用 OpenID 之类的东西来打扰我的用户。转到用户类型。)

因此,我认为用户应该能够通过向 login@domain.com 发送电子邮件来登录,无需主题或内容。作为回复,他们将收到一封电子邮件,其中包含用于登录的链接(其中包含哈希值)。另外,我会让用户执行一些操作,甚至根本不需要访问该网站,只需发送一封包含 command@domain.com 的电子邮件,命令就会被执行。我假设用户及其电子邮件提供商会照顾他们的电子邮件帐户安全,因此我的网站上不需要它。

现在,我如何从一封电子邮件发送到一个不被人类读取的帐户到被触发一些脚本(基本上是一个“虚拟浏览器客户端”调用一个 url(并且 cakephp 将处理休息)?

<小时/>

我以前从未使用过 cron 作业,但我确实认为我了解它们的目的或它们通常如何工作。我不能让随机访问该网站的人调用该脚本,因为该解决方案由于多种原因而不起作用。我想我想了解更多关于运行脚本作为对收到的电子邮件的响应的可能性,如果有人对此有任何意见的话。如果它作为 cron 作业运行,它只会每 X 分钟检查一次,并且用户的响应会出现滞后(如果我理解正确的话)。

由于不同的命令会有不同的电子邮件地址,例如login@domain.com,并且我知道根据发件人电子邮件要做什么以及如何做,所以我什至不需要电子邮件中的内容、主题或任何其他 header 。

<小时/>

人们对这个应用程序的安全性有很多担忧,我理解这些问题,但在不放弃我的概念的情况下,我认为这对于我正在做的事情来说不是一个大问题。另外关于可用性问题,确实不存在。如果/当他们需要这个命令和另一个命令时,只需登录即可提供对用户个人资料的更改。这是主要的电子邮件,非常容易记住,也是整个概念的开始。

最佳答案

我已经使用了pop3 php class取得了巨大成功(还有 Pear POP3 module )。

使用 pop3 类看起来像这样:

require ('pop3.php');

$pop3 = new pop3_class();
$pop3->hostname = MAILHOST;
$pop3->Open();
$pop3->Login('myemailaddress@mydomain.com', 'mypassword');

foreach($pop3->ListMessages("","") as $msgidx => $msgsize)
{
$headers = "";
$body = "";

$pop3->RetrieveMessage($msgidx, $headers, $body, -1);
}

我用它来监视输入数据库的 POP3 邮箱。

它由 cronjob 调用,该 cronjob 使用 wget 调用我的 php 脚本的 url。

*/5 * * * * "wget -q --http-user=me --http-passwd=pass 'http://mydomain.com/mail.php'" >> /dev/null 2>&1

编辑

我一直在考虑您需要让用户通过电子邮件发送某些网站命令。

拥有一个可以发送多个命令的地址不是比拥有多个地址更容易吗?

我认为安全问题也很合理。除非命令是非破坏性的或不执行任何特定于用户的操作,否则系统将对任何知道如何欺骗电子邮件地址的人(这将是每个人:))开放。

关于cakephp - 如何通过电子邮件控制Web应用程序?或者如何通过发送电子邮件来运行php脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46777/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com