开发者

PHP's fsockopen() function problem

Hi there :)

I have a problem with a function of PHP. I can't understand why it cannot work, and that's a problem for my project.

The context :

I have Joomla and want it to send email via the option "SMTP server". It's not working and the return is "Can't connect to smtp host".

I had searched in google for that problem and all the solutions I found didn't work for me. So I decided to go into the code to see what happened. The problem occurs when the code call to the method "fsockopen()", a built-in PHP method. This method say that the connectio开发者_开发知识库n to the host timed out.

Where it becomes funny : I can connect and send email with this host, with exact same parameters with a mail client (Evolution), on the same machine (so it's not a problem of opened port or something else).

The method is :

fsockopen($host, $port, $errno, $errstr, $tval);  

The used parameters and error returned :

$host : ssl://smtp.laposte.net. 
$port : 25
$errno : 110
$errstr : Connection timed out
$tval : 10

Some technical information :

PHP Version : 5.2.14

Sockets Support : enabled

OS : Ubuntu 10.10 under a virtual machine (VMWare)

Port : port 25 (smtp) is open on the virtual machine AND on the host of the virtual machine.

If someone had an idea how this function work and why it cannot connect, it will help me A LOT,

Thanks in advance,

Damien


I see you are using ssl... do you have OpenSSL enabled in php.ini?

If OpenSSL support is installed, you may prefix the hostname with either ssl:// or tls:// to use an SSL or TLS client connection over TCP/IP to connect to the remote host.

http://php.net/manual/en/function.fsockopen.php

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜