转发来自不存在的子域的电子邮件?

时间:2014-09-23 17:45:43

标签: php email cpanel forward

我在DNS设置中添加了子域名称记录, 所以,如果你输入

notexistingsubdomain.mysite.com

重定向到

mysite.com

我还有一个管道电子邮件的脚本,

pipe.php

#!/usr/bin/php -q
<?
$fd = fopen("php://stdin", "r");
$email = "someone@hotmail.com";
while (!feof($fd))
{
    $email .= fread($fd, 1024);
}
fclose($fd);


mail('admin@mysite.com','From my email pipe!','"' . $email . '"');

?>

如果有人发送电子邮件至

notexistinguser@mysite.com

来到

admin@mysite.com

我无法做到的是

我想将所有电子邮件转发到我的域名电子邮件(甚至是非现有的子域名),例如

something@notexistingsubdomain.mysite.com

admin@mysite.com

这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:2)

我想在此前言:在电子邮件中捕获所有 antyhing 是一个坏主意,除非您喜欢大量的垃圾邮件。这是一个坏主意,你不应该不要这么做,但是如果你不倾向于倾听理性那么这就是你正确地做到这一点的方式:

  1. 创建通配符A和MX记录:

    是的,你需要A记录。某些MTA将拒绝发送到没有A记录的域/子域。

    *.yourdomain.com. IN A     1.2.3.4
    *.yourdomain.com. IN MX 10 mail.yourdomain.com
    
  2. 在MTA软件中设置通配符域别名:

    • TBH:我真的怀疑你是否可以通过CPanel进行设置,我认为他们会做出[合理的]假设,即没有一个心智正常的人会这样做。
    • 技术上应该是可行的,但您需要以创意和可能未记录的方式手动编辑一些配置文件。您肯定可以在Postfix中执行此操作,并且您可以在Sendmail中执行任何操作,并且具有足够的数据。其他MTA ......我无法肯定地说
  3. 当您的catch-all邮箱每天都达到其配额时,或者如果没有分配配额,您的邮件服务器的磁盘每周都会填满,这会歇斯底里地啜泣。

  4. 不知道为什么要这样做。

  5. 哦,除非这是一个专门的服务器,你是唯一的管理员,我会建议不要这样做。如果有人在我管理的服务器上做了这个,甚至尝试过这个,我会跟踪它们并为它们做些非常不愉快的事情。