NSAPI php4 module on Linux/Solaris/Windows2000

From: Date: Wed, 31 May 2000 13:57:56 +0000
Subject: NSAPI php4 module on Linux/Solaris/Windows2000
References: 1  Groups: php.dev 
Request: Send a blank email to php-dev+get-19826@lists.php.net to get a copy of this message
Whitehead Anthony wrote: > I committed a some changes to the NSAPI module today, about 1500CET (thats > 1400GMT I think) This includes all my current patches and the patch I got from > the php-dev list last week. Now I'm playing with php4-200005301245. Compiled with gcc 2.95.2 and works on both Solaris 2.6 and Linux with iPlanet 4.1 Thank you a lot ! I succeded to make it work on Windows2000, but there are still some things to be fixed: 1) #define XP_UNIX on the 23th line - have to be erased 2) Every WINAPI have to be replaced with NSAPI_PUBLIC - this is the correct way to define NSAPI module entries (so, there is also no need to #ifndef WINAPI) Otherwise you'll get the following: Configuration initialization failed: Error running init function load-modules: dlsym for php4_init failed Will thank you very much if you'll submit these fixes. 3) Strange behavior in Netscape browser + Netscape Server: I am trying test.php containing only <?phpinfo()?>, and Netscape say "Document: done" but the Netscape's semaphore icon is still red (connection is not closed?) Nothing wrong with Apache php module and/or MSIE browser. 4) PHP and Zend images on <?phpinfo()?> page are broken in Netscape 4 browser, but are shown in MSIE and Netscape 6 That's because instead of the following url: http://localhost/test.php?=PHPE9568F34-D428-11d2-A769-00AA001ACF42 Netscape4 gets only a part of URL without script name, just: http://localhost/?=PHPE9568F34-D428-11d2-A769-00AA001ACF42 Other things are Windows-only related: 0) MSIE sometimes kills Netscape Server - seems like some concurrency/memory corruption problem in php module 1) Following PHP Windows building instructions, cygwin-b20 is installed in C:\Program Files\Cygnus, and that means that bison.simple will be put in C:\Program Files\Cygnus\cygwin-b20\share folder, but all the bison calls use C:\Program Files\Cygnus\share instead. Errm... can someone explain what does this -S option in calling bison mean ? According to man, bison has no such option and I succeeded to finish the compilation only after erasing these -S from all bison calls. 2) In no-threaded project configuration: Function Modules/Source Files No.1/levenstain.c file is absent 3) Also in no-threaded project configuration: parsedate.y pre-build step is not defined 4) With Apache there is no need to put php4ts.dll in \WINNT\System folder - it can found dll in the the same folder where php4apache.dll is placed. Seems like Apache does chdir to the folder where the .dll loaded by LoadModule resides. But with Netscape Server php4nsapi.dll can't find php4ts.dll in the same folder. The question is: How to compile php4nsapi.dll and php4ts.dll into a single dll ? Or, maybe will be better to learn php4nsapi.dll to load php4ts.dll explicitly from it's own directory during php4_init call ? Stanislav Borutsky, ReachCast Corporation Tel-Aviv

« previous php.dev (#19826) next »