我正在使用sSMTP与PHP进行电子邮件发送,它运行良好。
问题是sSMTP同步执行传递,这会给我的PHP脚本增加延迟,让用户等待的时间太长。
有办法让它非阻塞地工作吗?
(我想对shell进行黑客攻击,在后台或其他地方启动sSMTP进程,并在更早的时候返回到PHP,但我无法使它工作。)
发布于 2012-05-21 00:30:48
好吧,我想出来了!使用script命令,我们可以编写一个包装器:
#!/bin/sh
script -q -c "/usr/sbin/ssmtp $*" /dev/null发布于 2012-05-17 11:58:46
是的,请使用支持排队的空邮者之一或完整的MTA,而不是ssmtp。虽然您可以围绕SSMTP编写一个包装器,但它需要分叉和setsid才能与调用的php进程隔离。
发布于 2012-05-17 05:10:14
您可以使用gearman或其他类似的技术来实现异步阻塞。请参阅http://www.phpclasses.org/blog/post/108-Distributing-PHP-processing-with-Gearman.html
https://serverfault.com/questions/389873
复制相似问题