SmtpMail を使用してメールを送信しようとしています。私のローカルサーバーでは、コードにホスト/サーバー、パスワード、および情報セットがコードに含まれていても、これを行うことができます。私のホスティング サービス (1and1) では、web.config ファイルでこれらを設定した場合にのみ送信されます。これを引き起こす原因を知っている人はいますか (1and1 にはわかりません)。
ローカルで動作しますが、ホスティング サービスでは動作しません
<%@ Page language="c#" %>
<%@ Import namespace="System.Net.Mail" %>
<%
MailMessage mail = new MailMessage();
//Set my from address
mail.From = new MailAddress( "myemail@myemail.com");
//Who I'm sending to
mail.To.Add( new MailAddress("you@you.com") );
mail.Subject = "A test";
mail.Body = "Test message";
//Set the mail server (default should be smtp.1and1.com)
SmtpClient smtp = new SmtpClient( "smtp.1and1.com" );
//Enter your full e-mail address and password
smtp.Credentials = new NetworkCredential("myemail@myemail.com", "mypassword");
//Send the message
smtp.Send(mail);
%>
これは、ホスティングで動作させる方法です (テスト ページと web.config の 2 つのファイル)。
<%@ Page language="c#" %>
<%@ Import namespace="System.Net.Mail" %>
<%
MailMessage mail = new MailMessage();
//Set my from address
mail.From = new MailAddress( "myemail@myemail.com");
//Who I'm sending to
mail.To.Add( new MailAddress("you@you.com") );
mail.Subject = "A test";
mail.Body = "Test message";
//Create with no server or credentials (grabs from web.config)
SmtpClient smtp = new SmtpClient();
//Send the message
smtp.Send(mail);
%>
(および web.config)
<configuration>
<system.net>
<mailSettings>
<smtp from="myemail@myemail.com">
<network host="smtp.1and1.com" port="25" userName="myemail@myemail.com" password="mypassword"/>
</smtp>
</mailSettings>
</system.net>
</configuration>