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

 ID:                 62381
 Comment by:         a...@php.net
 Reported by:        dave at yougeezer dot co dot uk
 Summary:            FPM doesn't handle Apache script_filename on Windows
 Status:             Open
 Type:               Bug
 Package:            CGI/CLI related
 Operating System:   Windows XP
 PHP Version:        5.4.4
 Block user comment: N
 Private report:     N

 New Comment:

btw I see you're using apache 2.4, do you have the same error with apache 2.2?


Previous Comments:
------------------------------------------------------------------------
[2012-06-27 10:26:44] dave at yougeezer dot co dot uk

Ah, thanks for clearing that up.  That explains the fact that there aren't any 
extra php processes being launched.  Doesn't explain the issue with no input 
file 
being specified as I'd have though #54152 would have fixed the path issue of 
Apache not passing SCRIPT_FILENAME correctly.

Shame about libevent holding FPM back on Windows, maybe the work being done 
with 
libuv could be of use?

------------------------------------------------------------------------
[2012-06-27 10:10:19] a...@php.net

You use c:\php54\php-cgi.exe which runs clearly in FastCGI mode. No FPM is 
going under Win as it uses libevent (saw some people playing with cygwin, but 
that's tricky stuff anyway). This looks more like a configuration issue in your 
apache after all.

------------------------------------------------------------------------
[2012-06-21 12:56:55] dave at yougeezer dot co dot uk

There seems to be, I have FPM working fine with the nginx Windows port and PHP 
5.4.4.

Here's an example of the config I used for nginx:
location ~ \.php$ {
  root           html;
  fastcgi_pass   127.0.0.1:9054;
  fastcgi_index  index.php;
  fastcgi_param  SCRIPT_FILENAME  c:/nginx-1.2.1/html/$fastcgi_script_name;
  include        fastcgi_params;
}

Plus the "-b IP:Port" argument is there... but I didn't see any new php-cgi 
processes created to handle requests.

------------------------------------------------------------------------
[2012-06-21 12:41:57] paj...@php.net

There is no FPM on windows.

------------------------------------------------------------------------
[2012-06-21 09:55:14] dave at yougeezer dot co dot uk

Description:
------------
When running PHP using the FPM support, it doesn't appear to process the 
script_filename environmental variable passed by Apache (using mod_proxy_fcgi). 
 
This is probably related to #54152

Running a tool that monitors file access the following path is checked:

C:\php54\proxy:fcgi:\127.0.0.1:9054\c:\Apache24\htdocs\

Don't fully understand how PHP handles this but tried setting 
APACHE_PROXY_FCGI_PREFIX to various different values by using:
SetEnv APACHE_PROXY_FCGI_PREFIX "proxy:fcgi:\\"
...in the Apache configuration file.  But it didn't appear to have any effect.

Test script:
---------------
Apache conf:
ProxyPass / fcgi://127.0.0.1:9054/c:/Apache24/htdocs/php54

PHP startup:
c:\php54\php-cgi.exe -b 127.0.0.1:9054 -c c:\php54\php.ini

Expected result:
----------------
c:\Apache24\htdocs\

Actual result:
--------------
C:\php54\proxy:fcgi:\127.0.0.1:9054\c:\Apache24\htdocs\


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



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

Reply via email to