この質問が他の場所で尋ねられたかどうかはわかりません...
私が取り組んでいる Web サイト プロジェクトでは、ボタンのクリック時にフォームの内容を含む電子メールを送信する ASPX Web フォームを作成しました。試してみたところ、Yahoo SMTPサーバーを使用していて、個人のYahooメールアドレスを使用してテストしているときに機能しました(+ユーザー名とパスワードを指定)。
ただし、Web サイトのメール メッセージに SMTP サーバーを使用している場合は機能しません (Web サイトで新しい管理者の電子メール アカウントを作成した後)。
Web サイトは稼働しており、Web サイトの管理者の電子メール アカウント (Yahoo 経由) に電子メールを送信できますが、ASPX Web フォームを介して送信する場合は送信できません。
これは Yahoo SMTP サーバーを使用するためのコードで、正常に動作します。
SmtpServer.Credentials = New Net.NetworkCredential("username@yahoo.com", "password")
SmtpServer.Port = "25"
SmtpServer.Host = "smtp.mail.yahoo.com"
mail.From = New MailAddress("username@yahoo.com")
mail.To.Add("username@yahoo.com")
mail.Subject = "RE: Message Subject"
mail.Body = "Message goes here."
SmtpServer.Send(mail)
ここで、動作しない私の Web サイトの SMTP サーバーを使用するためのコードを次に示します。
SmtpServer.Port = "25"
SmtpServer.Host = "127.0.0.1"
mail.From = New MailAddress("admin@awesomewebsite.org.au")
mail.To.Add("admin@awesomewebsite.org.au")
mail.Subject = "RE: Message Subject"
mail.Body = "Message goes here."
SmtpServer.Send(mail)
これらは、Web サイトをホストする Web ホスティング会社から提供された正しいポート番号とホスト番号です。また、ユーザー名とパスワードは必要ないとも言いました。これをコードの先頭に追加しようとしましたが、それでも機能しません。
SmtpServer.Credentials = New Net.NetworkCredential()
あるいは
SmtpServer.Credentials = New Net.NetworkCredential("", "")
私は本当に何をすべきかわかりません。この初心者を助けてください。任意の応答をいただければ幸いです。
ところで、これを試してみると、メッセージ ボックスに「メールの送信に失敗しました」というエラー メッセージが表示されます。