Edit report at http://bugs.php.net/bug.php?id=51079&edit=1

 ID:               51079
 Comment by:       thijsputman at gmail dot com
 Reported by:      tony at marston-home dot demon dot co dot uk
 Summary:          fsockopen will not work on 'localhost'
 Status:           Open
 Type:             Bug
 Package:          Sockets related
 Operating System: win32 only - Windows XP
 PHP Version:      5.2.12

 New Comment:

Agreed, but that's not my point: 



Just like when using fsockopen() to connect to "localhost", I would
expect mysql_connect("localhost") to also attempt to use IPv4,
irrespective of whether "localhost" resolves to [::1] or 127.0.0.1.

This is the same behaviour exhibited by Firefox on my system and
apparently also the behaviour of several other PHP functions, as made
clear in the initial post of this bug.


Previous Comments:
------------------------------------------------------------------------
[2010-03-10 10:53:40] paj...@php.net

Mysql is not related to this problem, IPv6 is not supported and you have
to apply one of the solutions described here or one of the other
numerous reports about mysql and IPv6.

------------------------------------------------------------------------
[2010-03-10 09:43:16] thijsputman at gmail dot com

I can confirm that the problem is not present in PHP 5.3.0, but _is_
present in PHP 5.3.2... 



It appears the mysql(i) extension is suffering from the same issue: I
just spend a couple hours going through various versions of phpMyAdmin
(which after upgrading from 5.3.0 simply timed out with a blank page)
until discovering this issue. Changing "localhost" into "127.0.0.1" did
trick.



Tested using 5.3.2 (VC9 NTS) on Windows Server 2008 (x64). On a side
note, both Firefox and MS telnet don't have any issues connecting to
localhost over IPv4.

------------------------------------------------------------------------
[2010-02-19 14:42:07] tony at marston-home dot demon dot co dot uk

-Status: Feedback
+Status: Open

I have tried 5.2.13RC2, but it produces the same error. I have not tried
5.3.2RC2 as I do not have an error with 5.3.0 (which may be because my
copy of 5.3.0 does not have IPv6 support enabled).

------------------------------------------------------------------------
[2010-02-19 12:51:20] paj...@php.net

-Status: Bogus
+Status: Feedback

Have you tried with 5.2.13RC2 and 5.3.2RC2?

------------------------------------------------------------------------
[2010-02-19 10:58:02] tony at marston-home dot demon dot co dot uk

Rasmus, before you post a comment like that I suggest you first make
yourself aware of the facts.

(1) I am not the only one who has reported it, see
http://bugs.php.net/bug.php?id=47437 where the suggested "fix" was to
disable IPv6 support in Windows.

(2) Nobody has ever said that they cannot reproduce the problem.



This problem exists in Windows XP with IPv6 support enabled, and with
PHP 5.2.12 also with IPv6 support enabled.



None of my web browsers (IE, Firefox, Opera, Safari) has a problem with
resolving 'localhost' to 127.0.0.1



gethostbyname('localhost') returns '127.0.0.1' without any problem.



The CURL extension can send requests to 'localhost' without a problem.



I have another Windows XP PC with IPv6 support enabled, running PHP
5.3.0 with IPv6 support disabled, and fsockopen() will accept
'localhost' without falling over.



So why can't fsockopen() in 5.2.12 deal with 'localhost', only
'127.0.0.1'?



Do NOT tell me that this is a Windows XP issue and that I should disable
IPv6 support. IPv4 and IPv6 are designed to run alongside each other and
are NOT mutually exclusive. The only function on my PC that has a
problem with that is fsockopen(), so stop procrastinating and FIX IT!

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    http://bugs.php.net/bug.php?id=51079


-- 
Edit this bug report at http://bugs.php.net/bug.php?id=51079&edit=1

Reply via email to