Casella di posta non disponibile. La risposta del server è stata: 5.7.1 Impossibile inoltrare per abc@xyz.com [chiuso]


84

Ricevo il messaggio " Mailbox non disponibile. La risposta del server è stata: 5.7.1 Impossibile inoltrare per abc@xyz.com " quando provo a inviare la posta utilizzando ASP.NET. Il sito è distribuito su IIS7, server Windows 2008.

Il sito web funzionava bene su IIS6 e Windows 2003 Server . L'ho distribuito su IIS7, 2008 ha iniziato a darmi questo errore.

Qualcuno l'ha sperimentato prima?



Stack Overflow è un sito per domande di programmazione e sviluppo. Usa un altro sito sulla rete Stack Exchange .
jww

Risposte:


115

Aahh capito ... ho capito che funziona :)

Grazie Christopher, il tuo suggerimento è corretto.

Tuttavia, trovare il "server virtuale SMTP predefinito" è stato complicato;)

Anche se usi IIS7 per distribuire il tuo sito web, devi aprire IIS6 Manager per configurare il server SMTP (perché?).

Ho configurato il server SMTP come segue per far funzionare le cose:

  1. Apri Gestione IIS6 utilizzando Pannello di controllo -> Strumenti di amministrazione.
  2. Apri le proprietà del server virtuale SMTP.
  3. Nella scheda Generale, impostare l'indirizzo IP del server Web invece di "Tutti non assegnati".
  4. Nella scheda Accesso, fare clic sul pulsante Relay, si aprirà la finestra di dialogo Restrizioni di inoltro.
  5. Nell'elenco dei computer di inoltro, aggiungere l'indirizzo IP di loopback, ad esempio 127.0.0.1 e l'indirizzo IP del server Web, in modo che possano passare / ritrasmettere e-mail attraverso il server SMTP.

3
Il motivo per cui questo deve essere gestito in IIS 6 è perché IIS 7.X non ha il proprio componente server SMTP, quindi utilizza IIS 6.
MemeDeveloper

5
Nel mio web.config mi riferivo al mio server smtp con il nome "localhost". Se ho seguito il passaggio 3, questa soluzione non è riuscita; se ho omesso il passaggio 3 ha funzionato. Grazie :)
Paul Suart

1
Questo vale anche per IIS8 e server 2012
Isaac Bolinger

Stiamo utilizzando un relay per inviare e-mail tramite un account nel nostro Office 365. Devo comunque installare il server smtp in IIS 6 anche se non stiamo utilizzando il server smtp del server web. Questo è su un Windows Server 2016 che esegue IIS 10. Qualcuno ha qualche suggerimento o una soluzione per questo problema? Grazie in anticipo!
Nathan

Grazie mille! Ho risolto il mio problema.
Nanou Ponette

20

qui sta la risposta ... Impostazioni IIS

IIS -> Server virtuale SMTP predefinito -> Proprietà -> Accesso -> Restrizioni di inoltro basta aggiungere o escludere gli IP che ti interessano, dovrebbe risolvere il problema.


2
dove si trova il "server virtuale SMTP predefinito"? Sto usando IIS7. In IIS6 c'è "SMTP Virtual Server" ma in IIS & non lo è?
Vinod T. Patil

18

Stavo affrontando lo stesso problema e ho seguito i passaggi (spiegati in modo molto chiaro) nella risposta di Vinod, tuttavia questo ha creato un errore diverso:

Impossibile leggere i dati dalla connessione di trasporto: net_io_connectionclosed

Ho scavato un po 'di più e frugando in giro e (anche se non sono sicuro del motivo per cui ha funzionato) l'ho risolto:
- Tornando nella console di gestione IIS6.0
- Apri le proprietà del server virtuale SMTP
- Nella scheda Generale, cambiando l'IP Indirizzo: "impostazione di nuovo su" (Tutti non assegnati) "

Non sono sicuro del motivo per cui funziona, ma si spera che possa aiutare qualcuno ad affrontare lo stesso problema in futuro.


15

Come un'immagine vale più di mille parole ..

Quando trovi il gestore IIS6 (ho scoperto che la ricerca di IIS può restituire 2 risultati) vai alle proprietà del server SMTP, quindi "Accesso", quindi premi il pulsante di inoltro.

Quindi puoi selezionare tutto o consentire solo determinati IP come 127.0.0.1

Inoltro SMTP


5

Grazie a Vinod per la risposta ben presentata.

Ho ricevuto lo stesso errore di Mick Byrne quando ho seguito i passaggi precedenti. Riportandolo a Tutti non assegnati lo ha risolto, ma ho dovuto modificare anche alcune altre cose:

  • Aggiungi l'utente con cui era in esecuzione il mio sito agli utenti nella scheda Sicurezza nel server virtuale SMTP.
  • Modificato il valore nell'attributo mailSettings> network> host nel mio web.config con l'IP del server specifico (ad esempio 192.168.100.120) invece di localhost (che puntava a 127.0.0.1 nel file hosts).

Spero che questo faccia risparmiare a qualcuno qualche minuto di scherzi.


4

Sono stato in grado di risolvere questo problema modificando le impostazioni della posta nella parte system.net del mio web.config:

<mailSettings>
    <smtp deliveryMethod="Network">
        <network host="yourserver" defaultCredentials="true"/>
    </smtp>
</mailSettings>

2

Se hai Exchange 2010 :

(Nel mio caso, il messaggio di errore non conteneva "per abc@xyz.com")

Questo mostra come aggiungere un connettore di ricezione: http://exchangeserverpro.com/how-to-configure-a-relay-connector-for-exchange-server-2010/

Ma dovevo anche eseguire un passaggio trovato qui: http://recover-email.blogspot.com.au/2013/12/how-to-solve-exchange-smtp-server-error.html

  • Vai a Exchange Management Shell ed esegui il comando
  • Get-ReceiveConnector "JiraTest" | Add-ADPermission -User "NT AUTHORITY \ ANONYMOUS LOGON" -ExtendedRights "ms-Exch-SMTP-Accept-Any-Recipient"

Mentre lavoravo su questo, ho eseguito quanto segue sulla console PowerShell del server interessato fino a quando l'errore non è scomparso:

Send-MailMessage -From "myemail@server.com.au" -To "myemail@server.com.au" -Subject "Test Email" -Body "This is a test"

1

Volevo condividere cosa ha causato l'errore nel mio caso. Passa un paio d'ore per capirlo, quindi spero che aiuti a risparmiare tempo a qualcuno.

Stranamente, l'errore è stato generato con l' Enable drop directory quotaimpostazione abilitata per il dominio.

inserisci qui la descrizione dell'immagine

Non sono un esperto e non conosco la spiegazione tecnica, ma deselezionando l'impostazione menzionata è stato risolto il problema.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.