我正在使用 Redhat Linux 服务器。几个月前,我用 PHP5 编写了一个简单的用户注册系统,使用电子邮件作为验证。我记得当时它正在工作。然而,最近测试系统后,我发现电子邮件实际上并未发送(我尝试了来自不同域的几个电子邮件地址,并检查了垃圾邮件文件夹)。
作为测试用例,我尝试了下面的简单代码(使用我的实际电子邮件地址作为 $to):
<html>
<head>
<title>Sending email using PHP</title>
</head>
<body>
<?php
$to = "myemail@gmail.com";
$subject = "Subject";
$message = "Message";
$header = "From:webmaster@mydomain.com \r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "Content-type: text/html\r\n";
$ret = mail ($to,$subject,$message,$header);
if( $ret == true )
{
echo "Message sent successfully.";
}
else
{
echo "Message could not be sent.";
}
?>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
它回显“消息发送成功”。我还尝试使用PHPMailer,它给出了一条成功的消息(我相信他们的实现也使用了 mail() 函数)。
查看php.ini,有以下内容:
[mail function]
SMTP = localhost
smtp_port = 25
sendmail_path …Run Code Online (Sandbox Code Playgroud) 每个人。我需要使用 C# 发送无回复邮件。网络管理员告诉我,SMTP 服务器配置为发送此类邮件(使用任何没有密码的帐户)。我正在尝试这个:
System.Net.NetworkCredential credencials = new System.Net.NetworkCredential();
credencials.UserName = "mail@domain.com";
MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient();
mail.To.Add(email);
mail.From = new MailAddress("mail@domain.com");
mail.Subject = subject;
mail.IsBodyHtml = true;
mail.Body = message;
SmtpServer.Host = "smtpserver";
SmtpServer.Port = 25;
SmtpServer.Credentials = credencials;
SmtpServer.EnableSsl = true;
SmtpServer.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
SmtpServer.Send(mail);
Run Code Online (Sandbox Code Playgroud)
我尝试过在没有凭据的情况下使用空字符串作为密码,但似乎没有任何效果。
我是否忘记了任何特殊参数或配置?
我构建了 tkinter 应用程序来发送电子邮件。电子邮件正文应从文本小部件获取具有格式/样式的文本。有没有什么方法可以做到同样的事情。
get 方法仅给出文本,但不给出样式/格式。
当用户输入电子邮件进行密码重置时,会出现与服务器故障错误相关的连接失败错误。
回程:
内部34中的文件“C:\ProgramData\Anaconda3\lib\site-packages\django-2.2b1-py3.7.egg\django\core\handlers\exception.py”。response = get_response(request)
_get_response 115 中的文件“C:\ProgramData\Anaconda3\lib\site-packages\django-2.2b1-py3.7.egg\django\core\handlers\base.py”。response = self.process_exception_by_middleware(e, request)
_get_response 113 中的文件“C:\ProgramData\Anaconda3\lib\site-packages\django-2.2b1-py3.7.egg\django\core\handlers\base.py”。response =wrapped_callback(request, *callback_args, * *回调_kwargs)
视图 71 中的文件“C:\ProgramData\Anaconda3\lib\site-packages\django-2.2b1-py3.7.egg\django\views\generic\base.py”。 return self.dispatch(request, *args, **夸格斯)
文件“C:\ProgramData\Anaconda3\lib\site-packages\django-2.2b1-py3.7.egg\django\utils\decorators.py”在_wrapper 45中。返回bound_method(*args, **kwargs)
文件“C:\ProgramData\Anaconda3\lib\site-packages\django-2.2b1-py3.7.egg\django\views\decorators\debug.py”在sensitive_post_parameters_wrapper 76中。 return view(request, *args, **夸格斯)
调度 53 中的文件“C:\ProgramData\Anaconda3\lib\site-packages\registration\views.py”。返回 super(RegistrationView, self).dispatch(request, *args, **kwargs)
调度 97 中的文件“C:\ProgramData\Anaconda3\lib\site-packages\django-2.2b1-py3.7.egg\django\views\generic\base.py”。 return handler(request, *args, **夸格斯)
文件“C:\ProgramData\Anaconda3\lib\site-packages\django-2.2b1-py3.7.egg\django\views\generic\edit.py”在帖子142中。返回self.form_valid(form)
form_valid 中的文件“C:\ProgramData\Anaconda3\lib\site-packages\registration\views.py” 56. new_user = self.register(form)
寄存器 100 中的文件“C:\ProgramData\Anaconda3\lib\site-packages\registration\backends\default\views.py”。request=self.request,
create_inactive_user 193 中的文件“C:\ProgramData\Anaconda3\lib\site-packages\registration\models.py”。 lambda: Registration_profile.send_activation_email(
退出284中的文件“C:\ProgramData\Anaconda3\lib\site-packages\django-2.2b1-py3.7.egg\django\db\transaction.py” 。connection.set_autocommit(True)
set_autocommit 409 中的文件“C:\ProgramData\Anaconda3\lib\site-packages\django-2.2b1-py3.7.egg\django\db\backends\base\base.py”。 self.run_and_clear_commit_hooks()
文件“C:\ProgramData\Anaconda3\lib\site-packages\django-2.2b1-py3.7.egg\django\db\backends\base\base.py”在 run_and_clear_commit_hooks 624.func()
194.站点中的文件“C:\ProgramData\Anaconda3\lib\site-packages\registration\models.py”,请求)
send_activation_email 451 中的文件“C:\ProgramData\Anaconda3\lib\site-packages\registration\models.py”。 email_message.send()
发送 291 …
我正在尝试使用 sendgrid 发送邮件。我有一个域服务器,之前与 digitalocean Droplet 连接,如下图所示。但是当我尝试使用 sendgrid 验证我的域服务器并接收下面的消息时。
我不确定这是否完全可能,但我想我会把它扔出去.
我有一个客户通过我为他开发的网站上的联系表格从他认识的人那里得到一些仇恨邮件.目前我正常检查有效格式的电子邮件地址以及Captcha,但客户已要求用户在表单中输入他/她自己的电子邮件地址.
现在我意识到像这样的东西可能很容易被设置一个虚假的雅虎帐户等欺骗,但客户的想法是,这个人不是那种计算机文化.
是否有可能检查电子邮件地址是否有效且正在使用中?我能想到的唯一其他事情是将他的联系表格变成mailto:link.
请帮助我,我有使用PHP发送HTML格式的邮件mail()
的问题我认为问题在于标题.我已经包含两个标题,仅在单引号或双引号中略有不同:
标题1:
$headers = 'From: webmaster@example.com\r\n Reply-To: webmaster@example.com';
$headers .= '\r\nContent-Type: multipart/alternative; boundary="'.$random_hash.'"';
Run Code Online (Sandbox Code Playgroud)
当我使用上面的单引号时,我所有的html代码都在邮件中打印成简单的文本而没有正确的html格式.此外,我的标题显示在\r\n丢失后全部搞砸了所有内容.
标题2:
$headers = "From: webmaster@example.com\r\nReply-To: webmaster@example.com";
$headers .= "\r\nContent-Type: multipart/alternative; boundary=\"".$random_hash."\"";
Run Code Online (Sandbox Code Playgroud)
使用这个,我得到一个完美的标题,但现在我的邮件被发送空与空的附件.因为我没有附加任何东西到我的邮件,所以我不在哪里.
请建议做什么
我试图在prod环境中发送电子邮件,但它不起作用...我得到这个日志:
[2014-06-30 9点37分54秒] request.CRITICAL:未捕获的PHP异常Swift_TransportException:"预期响应码250,但得到的代码'530’,与消息" 530 5.7.0必须首先发出STARTTLS命令.o2sm28357522wia.16 - gsmtp""在C:\ xampp\htdocs\UniDocs\vendor\swiftmailer\swiftmailer\lib\classes\Swift\Transport\AbstractSmtpTransport.php第386行{"exception":"[object](Swift_TransportException:预期的响应)代码250,但得到代码"530",消息\"530 5.7.0必须首先发出STARTTLS命令.o2sm28357522wia.16 - gsmtp\r \n \"在C:\ xampp\htdocs\UniDocs\vendor\swiftmailer\swiftmailer\lib\classes\Swift\Transport\AbstractSmtpTransport.php:386)"} []
然而,在开发中它正在工作......
我的配置如下:
config_dev.yml:
swiftmailer:transport:smtp encryption:ssl auth_mode:login host:smtp.gmail.com username:myemail@gmail.com密码:mypass
config.yml:
swiftmailer:
transport: %mailer_transport%
host: %mailer_host%
username: %mailer_user%
password: %mailer_password%
Run Code Online (Sandbox Code Playgroud)
parameters.yml:
mailer_transport: smtp
mailer_host: smtp.gmail.com
mailer_user: myemail@gmail.com
mailer_password: mypass
Run Code Online (Sandbox Code Playgroud)
我还有另外一个问题......,在web/app.php中我要写$kernel = new AppKernel('prod', false);还是$kernel = new AppKernel('prod', true);?
我打算将SENDMAIL作为MTA邮件服务器安装到专用的新INSTANCE (smarthost)中,运行Linux Wheezy的GCE; 我已经运行了一个包含wordpress-website结构的实例.不幸的是,GCE没有任何实例来维持WORDPRESS的服务.
我的问题
我想知道这里是否有人有这样的经历与这个行动有关,给我任何建议.
谷歌云计算引擎(GCE)与Postfix/SendGrid的邮件建议有关,以及它通知唯一的端口与SMTP等工作...但我不认为Postfix/SendGrid是最好的方法.我想使用自己的主机名servername和设置MX Records,与其他web-site-driven-instance一起使用paralel.
问候,
我希望Python在某些事件发生后自动发送邮件.在我的脚本中,我必须输入密码.有没有办法加密我的密码并在此脚本中使用它?
请举个例子,因为我不是python的专家.我在这个主题上看到的答案很少,但是没有完全讨论,只给出了一些提示.
sendmail ×10
email ×3
php ×3
python ×2
smtp ×2
.net ×1
c# ×1
django ×1
encryption ×1
sendgrid ×1
smtpclient ×1
smtplib ×1
swiftmailer ×1
symfony ×1
text ×1
tkinter ×1
tkinter-text ×1
widget ×1