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