Multiple PHP Windows Server 2003

Discussion in '3CX Phone System - General' started by psykomotor, May 6, 2008.

Thread Status:
Not open for further replies.
  1. psykomotor

    Joined:
    Apr 24, 2008
    Messages:
    9
    Likes Received:
    0
    Hi,

    I don't know if this is a little out of scope for this forum - but it is a situation created solely to install 3CX.

    I have been searching for a way to have multiple instances of PHP on a windows 2003 server - The reason for this is I already run IIS with PHP as the primary purpose of the box is a hosting platform. There is plenty of spare capcity available in terms of memory, processing time, and bandwidth - so It's ideal to double up as a VoIP PBX...

    The problem is after installing 3CX it's web admin just won't start. The reason ? The original PHP is interfering with it (If you want to get technical, I think the reason is that the existing PHP Directory is in the PATH environment variable and 3CX's PHP is picking up the php5ts.dll from the existing install - which has a different module API and cannot load the extensions - see attached apache error log. Without the IIS PHP base directory being in the PATH environment variable, 3CX's PHP works fine - but the webserver doesn't !).

    My original desire was to share the same PHP install, but I am informed this is not possible. Failing that, I would be ok with having two instances of PHP, despite the lack of elegance - but I can't figure out how to get it going. From everything I've read, PHP isn't meant to be doubled up and I can't find a guide anywhere on how to do it so my gut feeling is that i'm sort of dabbling with the dark arts a bit by having two installs - but instruction given so far on this forum is firmly in favor of multiple installs.

    So, my question in summary, is how do I get a working PHP + IIS with 3CX PHP + 3CX Apache on the same windows server 2003 box ?

    Apache Startup Log :

    [Tue May 06 13:24:34 2008] [notice] Apache/2.0.58 (Win32) PHP/5.1.4 configured -- resuming normal operations
    [Tue May 06 13:24:34 2008] [notice] Server built: Apr 29 2006 17:47:10
    [Tue May 06 13:24:34 2008] [notice] Parent: Created child process 8068
    PHP Warning: PHP Startup: bz2: Unable to initialize module\nModule compiled with module API=20050922, debug=0, thread-safety=1\nPHP compiled with module API=20060613, debug=0, thread-safety=1\nThese options need to match\n in Unknown on line 0
    PHP Warning: PHP Startup: gd: Unable to initialize module\nModule compiled with module API=20050922, debug=0, thread-safety=1\nPHP compiled with module API=20060613, debug=0, thread-safety=1\nThese options need to match\n in Unknown on line 0
    PHP Warning: PHP Startup: pgsql: Unable to initialize module\nModule compiled with module API=20050922, debug=0, thread-safety=1\nPHP compiled with module API=20060613, debug=0, thread-safety=1\nThese options need to match\n in Unknown on line 0
    PHP Warning: PHP Startup: PDO: Unable to initialize module\nModule compiled with module API=20050922, debug=0, thread-safety=1\nPHP compiled with module API=20060613, debug=0, thread-safety=1\nThese options need to match\n in Unknown on line 0
    PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Program Files\\3CX PhoneSystem\\Bin\\Php\\extensions\\php_pdo_pgsql.dll' - The specified module could not be found.\r\n in Unknown on line 0
    PHP Warning: PHP Startup: xsl: Unable to initialize module\nModule compiled with module API=20050922, debug=0, thread-safety=1\nPHP compiled with module API=20060613, debug=0, thread-safety=1\nThese options need to match\n in Unknown on line 0
    PHP Warning: PHP Startup: cmstatus: Unable to initialize module\nModule compiled with module API=20050922, debug=0, thread-safety=1\nPHP compiled with module API=20060613, debug=0, thread-safety=1\nThese options need to match\n in Unknown on line 0
    PHP Warning: PHP Startup: phpSHIELD: Unable to initialize module\nModule compiled with module API=20050922, debug=0, thread-safety=1\nPHP compiled with module API=20060613, debug=0, thread-safety=1\nThese options need to match\n in Unknown on line 0
    [Tue May 06 13:24:34 2008] [notice] Child 8068: Child process is running
    [Tue May 06 13:24:34 2008] [notice] Child 8068: Acquired the start mutex.
    [Tue May 06 13:24:34 2008] [notice] Child 8068: Starting 1200 worker threads.

    It can be shown that the wrong core version of php is being loaded (the php5ts.dll from my existing, newer version of PHP - check the module API numbers), though the correct php.ini must be being used as the correct modules are being loaded.
     
Thread Status:
Not open for further replies.