Domanda

Sto eseguendo un server Apache locale su una macchina Ubuntu e sto cercando di usare la classe phpmailer per inviare posta. Tenta di connettersi da fsockopen al server di posta, ma genera un errore di timeout. Ho provato a impostare il timeout su 15 secondi senza fortuna. Funziona su altre macchine.

Come posso sapere se il mio ISP ha bloccato le richieste? Il server di posta risponde al ping.

È stato utile?

Soluzione

ping e comando SMTP non passano attraverso la stessa porta; è possibile che una porta sia aperta e non l'altra.

Se c'è un timeout, probabilmente significa che:

  • il tuo server SMTP non accetta connessioni dal tuo server
  • o c'è qualcosa da qualche parte (come un firewall) che blocca le tue richieste.

Se si dispone di un accesso ssh al server, l'utilizzo di telnet nella riga di comando per provare a connettersi al server SMTP e inviare comandi SMTP, potrebbe consentire di ottenere ulteriori informazioni ...

Ecco un paio di link che mostrano esempi di una sessione SMTP via telnet:

Se non riesci a connetterti al server, forse riceverai un messaggio di errore (che ti dice che non ti è permesso connettersi, per esempio) , o si interromperà di nuovo ... Il che probabilmente significa che la tua richiesta viene bloccata da qualche parte ...

In tal caso, consultare l'amministratore di rete; forse avrà qualche idea sull'apertura di una porta sul firewall.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top