我在ubuntu機器上運行本地apache服務器,並試圖使用phpmailer類發送郵件。 它試圖通過fsockopen連接到郵件服務器,但它會引發超時錯誤。我試圖將超時設置爲15秒而沒有運氣。 它可以在其他機器上工作。php fsockopen無法連接,連接超時錯誤
我如何知道我的ISP是否阻止了請求? 郵件服務器響應ping。
我在ubuntu機器上運行本地apache服務器,並試圖使用phpmailer類發送郵件。 它試圖通過fsockopen連接到郵件服務器,但它會引發超時錯誤。我試圖將超時設置爲15秒而沒有運氣。 它可以在其他機器上工作。php fsockopen無法連接,連接超時錯誤
我如何知道我的ISP是否阻止了請求? 郵件服務器響應ping。
ping和SMTP命令不通過相同的端口;有可能打開一個端口,而不是另一個端口。
如果出現超時,這可能意味着:
如果你有服務器的SSH訪問,使用命令行telnet來嘗試連接到SMTP服務器,發送SMTP命令,可以讓你得到一些更多的信息...
下面幾個是通過telnet顯示SMTP會話的實例鏈接:
如果你不能連接到服務器,也許你會得到一些錯誤信息(告訴你,你不允許連接,例如),否則它會再次超時......這可能意味着您的請求是被阻止在某處...
在這種情況下,請諮詢您的網絡管理員;也許他會想到在防火牆上打開一些端口。
謝謝,我的ISP阻止了端口25 – 2009-09-15 08:35:47
你連接了什麼郵件服務器?大多數住宅ISP不允許外出端口25連接到除自己以外的任何服務器。嘗試將傳出服務器更改爲您的ISP的SMTP服務器。 – Craig 2009-09-10 15:18:22
您是否可以使用MUA(thunderbird/outlook/mail.app)通過它發送電子郵件? – Shoan 2009-09-15 02:17:06
我有'fsockopen'這個問題,主機有多個IP地址。我可以telnet/swaks到相同的主機名沒問題,但fsockopen總是超時。通過使用'gethostfromname()'然後直接使用IP,'fsockopen'非常快樂,並且沒有超時。很奇怪。 – artfulrobot 2014-12-11 10:48:11