13
我試圖用PHPMailer發送電子郵件與SMTP和Gmail。我使用的確切腳本適用於其他服務器,但它不適用於此特定託管公司的服務器。如何檢查端口465和587是否用PHP打開?
我檢查了phpinfo()
和它告訴我,allow_url_fopen
是on
並沒有像disabled_functions
上市fopen
。
的腳本失敗,它告訴我或者:
SMTP -> ERROR: Failed to connect to server: Connection timed out (110)
否則
SMTP Error: Could not authenticate.
我假設這是因爲它無法連接,因爲再在其他服務器和這項工作認證憑證是正確的。
所以我更一般地問,有沒有辦法可以使用PHP或jailshell ssh
來檢查並查看端口是否實際打開?
+1爲了記錄,這是PHPMailer用於連接到SMTP服務器的相同方法(除了更長的超時時間和重試次數外)。 – webbiedave 2012-04-12 16:59:35
謝謝。我還了解到,即使端口處於打開狀態,但有時中繼功能仍處於禁用狀態。任何方式來檢查與PHP? – cwd 2012-04-16 18:56:58
@cwd:您需要發送適當的SMTP命令,並使用'fsockopen'返回的句柄上的'fwrite'和'fread'來檢查響應。 – netcoder 2012-04-16 19:14:42