Comment envoyer un courrier depuis ASP.NET avec IIS6 SMTP sur un serveur dédié?

StackOverflow https://stackoverflow.com/questions/97840

  •  01-07-2019
  •  | 
  •  

Question

J'essaie de configurer un serveur dédié qui exécute ASP.NET pour envoyer des messages via le serveur SMTP IIS local, mais les messages restent bloqués dans le dossier File d'attente et ne sont pas livrés.

J'utilise ce code dans une page .aspx pour tester:

<%@ Page Language="C#" AutoEventWireup="true" %>

<% new System.Net.Mail.SmtpClient("localhost").Send("info@thedomain.com", 
    "jcarrascal@gmail.com", "testing...", "Hello, world.com"); %>    

Ensuite, j'ai ajouté ce qui suit au fichier Web.config:

<system.net>
  <mailSettings>
    <smtp>
      <network host="localhost"/>
    </smtp>
  </mailSettings>
</system.net>

Dans le gestionnaire IIS, j'ai modifié les éléments suivants dans les propriétés du "Serveur virtuel SMTP par défaut".

General: [X] Enable Logging
Access / Authentication: [X] Windows Integrated Authentication
Access / Relay Restrictions: (o) Only the list below, Granted 127.0.0.1
Delivery / Advanced: Fully qualified domain name = thedomain.com

Enfin, j'exécute l'outil SMTPDiag.exe comme suit:

C:\>smtpdiag.exe info@thedomain.com jcarrascal@gmail.com

Searching for Exchange external DNS settings.
Computer name is THEDOMAIN.
Failed to connect to the domain controller. Error: 8007054b

Checking SOA for gmail.com.
Checking external DNS servers.
Checking internal DNS servers.
SOA serial number match: Passed.

Checking local domain records.
Checking MX records using TCP: thedomain.com.
Checking MX records using UDP: thedomain.com.
Both TCP and UDP queries succeeded. Local DNS test passed.

Checking remote domain records.
Checking MX records using TCP: gmail.com.
Checking MX records using UDP: gmail.com.
Both TCP and UDP queries succeeded. Remote DNS test passed.

Checking MX servers listed for jcarrascal@gmail.com.
Connecting to gmail-smtp-in.l.google.com [209.85.199.27] on port 25.
Connecting to the server failed. Error: 10060
Failed to submit mail to gmail-smtp-in.l.google.com.
Connecting to gmail-smtp-in.l.google.com [209.85.199.114] on port 25.
Connecting to the server failed. Error: 10060
Failed to submit mail to gmail-smtp-in.l.google.com.
Connecting to alt2.gmail-smtp-in.l.google.com [209.85.135.27] on port 25.
Connecting to the server failed. Error: 10060
Failed to submit mail to alt2.gmail-smtp-in.l.google.com.
Connecting to alt2.gmail-smtp-in.l.google.com [209.85.135.114] on port 25.
Connecting to the server failed. Error: 10060
Failed to submit mail to alt2.gmail-smtp-in.l.google.com.
Connecting to alt1.gmail-smtp-in.l.google.com [209.85.133.27] on port 25.
Connecting to the server failed. Error: 10060
Failed to submit mail to alt1.gmail-smtp-in.l.google.com.
Connecting to alt2.gmail-smtp-in.l.google.com [74.125.79.27] on port 25.
Connecting to the server failed. Error: 10060
Failed to submit mail to alt2.gmail-smtp-in.l.google.com.
Connecting to alt2.gmail-smtp-in.l.google.com [74.125.79.114] on port 25.
Connecting to the server failed. Error: 10060
Failed to submit mail to alt2.gmail-smtp-in.l.google.com.
Connecting to alt1.gmail-smtp-in.l.google.com [209.85.133.114] on port 25.
Connecting to the server failed. Error: 10060
Failed to submit mail to alt1.gmail-smtp-in.l.google.com.
Connecting to gsmtp183.google.com [64.233.183.27] on port 25.
Connecting to the server failed. Error: 10060
Failed to submit mail to gsmtp183.google.com.
Connecting to gsmtp147.google.com [209.85.147.27] on port 25.
Connecting to the server failed. Error: 10051
Failed to submit mail to gsmtp147.google.com.

J'utilise ASP.NET 2.0, Windows 2003 Server et le serveur IIS qui l'accompagne.

Pouvez-vous me dire quoi d'autre modifier pour résoudre le problème?

Merci

@mattlant

C’est un serveur dédié, c’est pourquoi j’installe manuellement le protocole SMTP.

  

EDIT: J'utilise l'échange donc c'est un peu   différent, mais son appelé un hôte actif   en échange, mais en service SMTP simple   config je pense que son appelé quelque chose   autre. Ne me souviens pas exactement le   nom du paramètre.

Merci de m'avoir dirigé vers le domaine de l'hôte intelligent. Le courrier est en cours de livraison.

Dans les propriétés du serveur virtuel SMTP par défaut, dans l'onglet Livraison, cliquez sur Avancé et remplissez le champ "Smart host". champ avec l'adresse que votre fournisseur vous a donné. Dans mon cas (GoDaddy), c’était k2smtpout.secureserver.net.

Plus d'infos ici: http://help.godaddy.com/article/1283

Était-ce utile?

La solution

Je trouve que la meilleure chose à faire, en fonction du volume de courrier électronique, consiste à simplement transférer le courrier via le serveur SMTP de votre FAI. Moins de maux de tête. On dirait que c’est là que vous rencontrez des problèmes, de votre SMTP à des serveurs externes, et non pas asp.net à votre SMTP.

Il suffit de configurer votre serveur SMTP pour l’envoyer à votre fournisseur de services Internet ou de configurer asp.net pour l’envoyer.

EDIT: J'utilise Exchange, donc c'est un peu différent, mais on l'appelle un hôte actif en échange, mais dans la configuration de service SMTP simple, je pense que cela s'appelle autre chose.

Je ne me souviens pas exactement du nom du paramètre.

Autres conseils

En apparence, votre pare-feu ne laisse pas SMTP (port TCP 25) sortir de votre réseau.

deux questions vraiment évidentes (juste au cas où elles n'auraient pas été couvertes) 1. Le pare-feu Windows a-t-il été désactivé? 2. avez-vous un pare-feu personnel / d'entreprise qui empêche l'envoi de votre courrier?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top