ID: 9852 Comment by: ottawasixtyseven at hotmail dot com Reported By: ron dot baldwin at sourceprose dot com Status: Closed Bug Type: IIS related Operating System: Windows 2000 PHP Version: 4.2.1 New Comment:
frankielam, You've hit the nail on the head. It's a problem with IIS. This DOES NOT HAPPEN *EVER* with Apache. IIS is not able to handle multiple simultaneous calls to php.exe. The question is now ... how the hell do we get Micro$haft to fix this? They are about as responsive to bugs likes this ... as a brick wall! I wish this was a PHP error because the lads at PHP are usually quite responsive to bugs. Anybody have any suggestions on how to get Bill to listen? I've tried calling support, posting messages, no luck. We have switched all our servers over to RedHat and the ones that MUST remain Windoze are running Apache Web server. It still should be noted that changing the Performance options can greatly reduce the occurence of the CGI error. Unfortunately, it does not eliminate it. Ottawa Previous Comments: ------------------------------------------------------------------------ [2003-03-05 20:32:01] frankielam at ucr dot com dot hk I can reproduce the error with the php script below(a simple script that do nothing but keeps refreshing itself with a different value of parameter passed into it as GET, REMEMBER to open serveral instances to run it.). IMHO, this is not a database problem(neither mysql nor mssql), and this might be a problem that IIS cannot handle sucha high frequent call to `php.exe', and it does assume that php.exe returns nothing!! (Am I right? :-D) doit.php 8<----------------------------------------------- <? echo "<html><head><title>testing</title>"; if (isset($_GET["times"])) $times = ($_GET["times"]) + 1; else $times = 0; //SEE??? even i comment the statement out, infamous cgi error occurs, STILL! //$conn = mssql_connect('127.0.0.1', 'sa', '') or die("couldn't connect"); echo "<meta http-equiv=\"Refresh\" content=\"0; URL=doit.php?times=" . $times . "\"></head></html>"; echo "Trying CGI"; echo "<BR>$times"; //header("doit.php"); ?> 8<----------------------------------------------- My config.: Windows 2000 Advanced Server with SP3 PHP 4.3.1 / 4.2.3 (both tested to have CGI problem) MSSQL Server 2000 ------------------------------------------------------------------------ [2003-03-03 17:23:06] gkasten at filnet dot fr http://support.microsoft.com/default.aspx?scid=kb;en-us;151825 http://bugs.php.net/bug.php?id=9852 Hello bugbrowsers (same comment as 12700, but this thread is better), I tried too unsuccessfully : -background perf -mdac -admin and various other commented things above, on IIS w2kSrv & NT4 , php 4.*<=4.3.1 :-( I had the problem on /phpmyadmin subdir, protected by ACLs. And only with far-tracerouted client machines. * I SUCCEEDED with unchecking "directory-security / allow-anonymous-access" (which is theorically useless because there is no IUSR_* in the acls of php pages below). I hope it can help desperate hostmasters, and php-dev-community to track this @#%! bug. Guy Kastenbaum - Paris ------------------------------------------------------------------------ [2003-02-18 05:15:56] dragel at elelog dot es I solve the error replacing: $q=odbc_do($conex,"selec...."); for a calling to a function: function ODBC($conex,$sql){ return odbc_do($conex,$sql); } ... $q=ODBC($conex,"select ..."); the use of a function make spend time and solve the problem. It works for me! ------------------------------------------------------------------------ [2003-01-28 05:11:57] mlaukast1 at hotmail dot com There's an interesting solution to 502 CGI Error in bug report #21681 by [EMAIL PROTECTED] Altough I wasn't able to get rid of the error entirely, the solution dramatically reduced the appearance of it. ------------------------------------------------------------------------ [2003-01-12 15:16:09] theo dot schoeberl at tssystems dot de We have chanced our PHP-Script from using ODBC to native MSSQL (using the MSSQL library). The same error (incl. 502 Bad Gateway). The next try was to change the server name to its IP address within the connect statement - and it works!!!!! No error since the change, running now over 14 days! May be there is a problem (known under Windows systems) resolving the server name? Hope this helps a lot of PHP developers running Windows systems! Theo ------------------------------------------------------------------------ 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/9852 -- Edit this bug report at http://bugs.php.net/?id=9852&edit=1