我有一个 WHM/cPanel 盒子,它与配置的 Web 和邮件域配合良好。我还配置了通配符子域,这样,anything.mysite.com 就会将您带到与 mysite.com 网站相同的网站,然后我会根据子域等执行略有不同的操作。
我现在需要电子邮件以类似的方式工作[电子邮件保护]被 exim 服务器捕获并在本地处理[电子邮件保护]是 - 这里的目的是我已经设置了一个脚本,它可以捕获所有未指定的电子邮件,并将根据子域和用户等对其进行处理。
这里的问题是,虽然邮件肯定发送到正确的服务器,但我收到了 451 响应,告诉我会有延迟。发送电子邮件至[电子邮件保护]100% 有效。
我无法指定所有子域,因为它们是动态的。
我尝试按照其他人的建议将 *.mysite.com 条目添加到 /etc/localdomains,然后错误变为“无法路由的地址”。我确实拥有该机器的 root 访问权限,但我对 exim 配置不太熟悉。任何帮助都感激不尽。
编辑:我已获得 cPanel 支持,尽管他们非常乐于助人,但他们表示该请求超出了他们的支持范围。他们建议在 exim 配置中添加一个路由器条目,用于通配符子域 - 我尝试过这个,虽然我确实让它在子域中工作,但无法弄清楚等式中的通配符部分。任何指导都很好。
答案1
我已经弄清楚了——为了其他搜索该主题的人的利益,这些是我必须输入的部分。
- 将通配符域添加到 /etc/localdomains 文件
- 在 exim.conf 中将 lsearch 更改为 wildlsearch,它引用上述文件。
现在它应该可以发送邮件了——我添加了以下内容以将邮件传送到脚本进行进一步的操作
在路由器中
catch_subs:
driver = accept
domains = *.mysite.com
transport = pipesubmail
在运输方面
pipesubmail:
driver = pipe
delivery_date_add
envelope_to_add
return_path_add
group = mail
user = me
command = /usr/bin/php /home/ /mailproc.php
奇迹般有效。