这是一个我确定很容易解决的问题,但我一整天都在喋喋不休.
我正在为客户开发一个新的网站.该网站位于(这是一个例子)website.com.我有一个PHP表单脚本,通过电子邮件将访问者的请求发送到requests@website.com.
当我在不同域上的登台服务器上编码时,一切正常.当我将它移动到website.com时,邮件消息从未到达.Web服务器位于具有主要ISP的虚拟主机上.
以下是我从那时起学到的东西:我的客户端的邮件服务器是Microsoft Exchange,位于办公室的物理盒子上.每当外界人士通过电子邮件request@website.com时,邮件就会到达. 但是,如果Web服务器发送到相同的电子邮件地址,则每次都会失败.这不是 PHP问题.我将shell安全地保存到Web服务器,并使用sendmail和UNIX邮件应用程序对其进行了测试.我也通过从shell发送各种电子邮件帐户来测试它.我可以给自己发电子邮件,例如,在website.com域名中没有人.
简而言之,当我登录website.com时,发送邮件至requests@website.com,user@website.com,alother_user@website.com全部失败.所有其他地址工作正常.我发现这些丢弃的电子邮件被路由到网络服务器的"catchall"帐户,它们位于收件箱中.
我在website.com上做过MX查找.MX记录指向mailsec.website.com.我可以telnet到mailsec.website.com端口25并查看SMTP服务器.
在我看来,在发送邮件到requests@website.com时,website.com没有进行MX查找.我的理论是,它将域识别为本地域,看到没有"请求"用户帐户将其传递给,并将邮件丢弃到catchall帐户.我想要的是强制sendmail进行MX查找并将消息发送到Exchange服务器.我在这里结束了.我无法弄清楚如何做到这一点.
就此而言,我可能会离开这里,完全误解了这一点.互联网邮件和MX对我来说似乎总是一种黑色艺术,我的无知肯定在这个问题上显示出来.
我有一段发送电子邮件的代码..这是代码
这对我不起作用。这是一个远程 smtp 服务……我仔细检查了电子邮件网络访问是否正常……我可以使用 gui 登录、接收和发送电子邮件。
但是当我尝试通过代码来做时..它失败并显示消息......
{System.Net.Mail.SmtpException: SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.7.0 未给出 AUTH 命令。
任何人都可以建议......而且他们没有暴露EWS,即交换网络服务./..这是要走的路..
端口是 25 并且没有 SSL 或 TLS
Button b = sender as Button;
try
{
MailMessage msg = new MailMessage(senderEmail, recieverEmail, "afdasfas", "safasfa");
//MailMessage msg = new MailMessage(senderEmail, recieverEmail, subject, subject);
System.Net.Mail.SmtpClient mailclient = new System.Net.Mail.SmtpClient(EmailSmtpServer, outgoingPort);
System.Net.NetworkCredential auth = new System.Net.NetworkCredential(senderEmail, senderPassword);
mailclient.Host = EmailSmtpServer;
mailclient.UseDefaultCredentials = false;
mailclient.Credentials = auth;
mailclient.Send(msg);
MessageBox.Show(b.Content + ":WORKED");
}
catch (Exception e4)
{
MessageBox.Show(b.Content + ": " +e4.Message);
MessageBox.Show(b.Content …Run Code Online (Sandbox Code Playgroud) 我有一个在本地运行的Django应用程序,我想测试" send_mail() "功能.目前,我可以在终端中使用以下命令打开postfix:
sudo postfix start
Run Code Online (Sandbox Code Playgroud)
一旦我打开postfix,我在终端中运行以下命令:
telnet localhost 25
Run Code Online (Sandbox Code Playgroud)
这两个步骤似乎正在起作用,因为"send_mail()"函数不会失败或导致异常.不幸的是,我不确定接下来我应该做什么来查看它发送的电子邮件.我试图配置Mail.app连接到localhost,但没有这样的运气.
有没有人能够深入了解我需要做什么才能看到postfix发送的电子邮件?
我正在使用GAE发送邮件 - 但我不希望邮件的发件人得到邮件的傻瓜.至于现在,当用户发送邮件时,他收到一封邮件,说他向某人和发送邮件的正文发送邮件,我该如何禁用?
我在PYTHON中开发了一个函数,它发送带有一个.doc附件和一个图像附件(.jpg)的电子邮件
电子邮件的消息是HTML.
我想知道如何在HTML消息上显示附加图像....有没有任何指令可以帮助我这个???
非常感谢....这是我开发的功能
def enviarCorreo(fromaddr, toaddr, text, file, imagen_1, imagen_2):
msg = MIMEMultipart('mixed')
msg['From'] = fromaddr
msg['To'] = toaddr
msg['Subject'] = 'asunto'
msg.attach(MIMEText(text,'HTML'))
#IMAGE ATTACHMENT *******************************************
adjuntoImagen_1 = MIMEBase('application', "octet-stream")
adjuntoImagen_1.set_payload(open(imagen_1, "rb").read())
encode_base64(adjuntoImagen_1)
anexoImagen_1 = os.path.basename(imagen_1)
adjuntoImagen_1.add_header('Content-Disposition', 'attachment; filename= "%s"' % anexoImagen_1)
msg.attach(adjuntoImagen_1)
#FILE ATACHMENT **********************************************
adjunto = MIMEBase('application', "octet-stream")
adjunto.set_payload(open(file, "rb").read())
encode_base64(adjunto)
anexo = os.path.basename(file)
adjunto.add_header('Content-Disposition', 'attachment; filename= "%s"' % anexo)
msg.attach(adjunto)
#SEND ********************************************************
server = smtplib.SMTP('localhost')
server.set_debuglevel(1)
server.sendmail(fromaddr, toaddr, msg.as_string())
server.quit()
return
Run Code Online (Sandbox Code Playgroud) 我无法使用Java Mail API从Yahoo ID发送电子邮件。我尝试了Google提供的其他选项,但失败了。请查看下面的代码,如果我缺少什么,请告诉我。以我的观点,雅虎不提供免费的发送邮件服务,但我不确定。请提供您对此的想法。
import javax.mail.*;
import javax.mail.internet.*;
import java.util.Properties;
public class MailExample {
private static final String SMTP_HOST_NAME = "smtp.mail.yahoo.com";
private static final int SMTP_HOST_PORT = 587;//465,587,25
private static final String SMTP_AUTH_USER = "dummyrls@yahoo.com";
private static final String SMTP_AUTH_PWD = "my password";
public static void main(String[] args) throws Exception{
new MailExample().test();
}
public void test() throws Exception{
Properties props = new Properties();
props.put("mail.transport.protocol", "smtp");
props.put("mail.smtp.host", SMTP_HOST_NAME);
props.put("mail.smtp.auth", "true");
// props.put("mail.smtps.quitwait", "false");
Session mailSession = Session.getDefaultInstance(props);
mailSession.setDebug(true);
Transport …Run Code Online (Sandbox Code Playgroud) 我有一个大约的网络应用程序.30k用户并且增长迅速.我们希望通过电子邮件启用某些功能,这意味着为每个用户分配一个唯一的电子邮件地址(出于安全原因).发送到这些唯一地址的电子邮件应转发到PHP脚本.PHP脚本需要访问电子邮件的所有部分 - 标题,正文和任何附件.我不确定以什么方式设置它.我们目前正在使用sendmail,并且更愿意坚持使用(这是Linux,如果重要的话).我已经能够获得一个单独的电子邮件转发到脚本,但它不可扩展(在我看来)创建30k别名,然后每次新用户注册时创建一个新别名.我会更乐意使用某种类型的基于catch-all/RegEx的解决方案,它只是告诉PHP脚本作为收件人的唯一电子邮件地址,这将让我们查找用户.
我的网络(Node.js)应用程序有一个人们填写的表格,并将查询发送给网站管理员(我自己@gmail).我之前没有在AWS上使用nodemailer.旧服务器有SMTP.从服务器发送到我的Gmail的电子邮件数量很少,非常小.
现在,我已转移到AWS EC2.我想继续使用nodemailer在代码中发送电子邮件.为了设置邮件服务器或让我发送邮件,我应该:
1)使用sendmail?有什么缺点?它会被gmail阻止吗?
2)设置我自己的SMTP服务器(后缀).但我不需要批量发电子邮件或接收电子邮件......
3)使用AWS SES服务.
另外,我是否需要从我的服务器打开端口25才能发送电子邮件?
谢谢.
考虑一个表作为table2,我想补充一个trigger在此表update作为
select Num into num from table1 where ID=new.id;
BEGIN
DECLARE done int default false;
DECLARE cur1 CURSOR FOR select EmailId from users where Num=num;
DECLARE continue handler for not found set done = true;
OPEN cur1;
my_loop: loop
fetch cur1 into email_id;
if done then
leave my_loop;
end if;
//send mail to all email id.
end loop my_loop;
close cur1;
END;
Run Code Online (Sandbox Code Playgroud)
有什么简单的方法可以在有评论的地方写东西吗?要将电子邮件发送到从table中检索到的所有电子邮件ID users。
我在XAMPP(phpmyadmin)中使用MySQL。
我在ubuntu 16.04上.我有一个(测试)docker(docker-compose)容器运行php 5.6和apache 2.4.
使用生产平台(没有泊坞窗),邮件将与sendmail一起发送.
如何在docker容器上发送测试邮件(使用sendmail)?
在此先感谢您的回复.
sendmail ×10
smtp ×4
email ×3
php ×2
python ×2
c# ×1
django ×1
docker ×1
html ×1
jakarta-mail ×1
java ×1
macos ×1
mime-message ×1
mime-types ×1
mx-record ×1
mysql ×1
node.js ×1
nodemailer ×1
php-5.6 ×1
postfix-mta ×1
smtpclient ×1
sql ×1
triggers ×1
yahoo-mail ×1