PHP 作为 smtp/pop3 服务器的桥梁
如果我想使用 PHP 脚本作为客户端到真正的 smtp/pop3 服务器的桥梁或中间人,是否可以?真实服务器位于防火墙后面,不会被配置为可供公众访问。所以我需要一个假服务器,它只是将电子邮件中继到真正的 smtp 服务器。有可能做到吗?
Is it possible if I want to use PHP script to be used as the bridge or the middle man from the clients to the real smtp/pop3 server? The real server is behind a firewall and will not be configured to be accessible for the public. So I need a fake server which just relay the email to the real smtp server. Is it possible to be done?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我相当确定,让共享主机上的 PHP 脚本执行真正的 POP3/SMTP 代理的功能基本上是不可能的。
来自客户端的请求将使用这些协议,并尝试连接到您的 Godaddy 服务器。该服务器要么有自己的 POP3/SMTP 服务器侦听这些端口,要么没有。
您必须使用具有完全 root 权限的服务器才能执行此操作 - 但随后,您将不再需要 PHP,那里会有更好的工具可以执行此操作。
I'm fairly sure it is fundamentally impossible to have a PHP script on shared hosting perform the functions of a true POP3 / SMTP proxy.
The requests coming from the clients would be using those protocols, and try to connect to your Godaddy server. That server will either have its own POP3 / SMTP server listening on those ports, or none.
You would have to use a server on which you have full root privileges to do this - but then, you will no longer need PHP, there will be better tools to do that available to you there.
理论上你可以编写一个代理,你必须在 PHP 中实现线路级 SMTP / POP3 / IMAP 协议。这必须运行一个服务(即 CLI,而不是在 Apache 内部)。如果您需要邮件代理,您考虑过 nginx 吗?
Theoretically you could write a proxy, you'd have to implement the wire-level SMTP / POP3 / IMAP protocols in PHP. This would have to be run a a service (i.e. CLI, not inside Apache). If you need a mail proxy, have you considered nginx?