2011-03-09 73 views
1

我無法用sugarcrm發送郵件。 Suagrcrm使用SMTP向phpmailer發送郵件。我發現當嘗試使用fsockopen打開套接字連接時發生錯誤。對fsockopen的調用返回boolean(false)。
給予的fsockopen的參數是包含下列值 5個變量'mail.example.com'(hostname), 25(port), ''(errno), ''(errstr), 10(timeout)fsockopen從瀏覽器返回'bool(false)',但從命令行返回'類型(流)'的資源(4)'

該錯誤消息是
Code: 10107 Reply: A system call that should never fail has failed.

錯誤代碼是存在於下「Windows套接字錯誤代碼」微軟的網站並部分地解釋如:
Returned when a provider does not return SUCCESS and does not provide an extended error code. Can indicate a service provider implementation error.

當我從一個瀏覽器調用腳本時,會發生該問題。如果我從命令行執行腳本,fsockopen會返回一個資源。

節目信息:
Windows XP
Apache/2.0.63 (Win32) mod_ssl/2.0.63 OpenSSL/0.9.8i PHP/5.2.8 Server
PHP Version => 5.2.8

任何人都可以提出這個問題的任何可能的解決方案。預先感謝您的任何建議。

回答

0

錯誤是由於在用作Web服務器的系統中存在防火牆引起的。當我卸載防火牆時它工作正常。

0

在windows下運行時,嘗試端口587而不是25!

+0

smtp服務器位於另一個系統中,它使用端口25 – air4x 2011-03-09 11:47:53

+0

然後,您應該在該機器上啓用端口587。端口25通常在windows下出現問題.. – ChrisH 2011-03-09 12:00:29

+0

我嘗試過端口587,但它也無法正常工作。事實上,我已經嘗試過使用telnet命令訪問許多ips和端口上的fsockopen,並且通過命令行也可以訪問php,但在使用php作爲apache處理程序時,它並不工作。也許我錯過了apache配置中的某些東西。 – air4x 2011-03-09 13:06:13