Zend Server 9.1.1.114795
The default MSI installation ("development machine" option) leaves the following configuration entry:
ZENDSERVER\Apache24\conf\httpd.conf
Code: Select all
FcgidInitialEnv PATH "..."
If your PATH is longer than 128 characters, you will have a bad time.
This seems to be an Apache mod_fcgid issue (found by the Perl guys in 2014(!)):
gmod[dot]org/wiki/Recompiling_mod_fcgid_to_avoid_truncated_Perl_library_paths
But you are not forced to use this broken directive.The problem is that mod_fcgid limits environment variables to 127 characters and will truncate their values if they exceed this.
example:
ZENDSERVER\Apache24\conf\httpd.conf
Code: Select all
FcgidInitialEnv PATH "C:\mysql\bin;C:\Program Files\MySQL\MySQL Utilities 1.6\;C:\Program Files\Java\jdk1.8.0_144\bin;C:\Program Files (x86)\GNU\GnuPG\pub;C:\Program Files\OpenVPN\bin;C:\Program Files\TortoiseSVN\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files\Git\cmd;C:\Program Files (x86)\ZendServer\ZendServer\share\ZendFramework\bin;C:\Program Files (x86)\ZendServer\ZendServer\bin;%JAVA_HOME%\bin;"
Code: Select all
C:\mysql\bin;C:\Program Files\MySQL\MySQL Utilities 1.6\;C:\Program Files\Java\jdk1.8.0_144\bin;C:\Program Files (x86)\GNU\GnuP
solution:
To workaround this issue remove or comment this directive:
ZENDSERVER\Apache24\conf\httpd.conf
Code: Select all
#FcgidInitialEnv PATH "..."
final thoughts:
Please improve the Windows MSI installer:
1. remove the FcgidInitialEnv PATH directive or comment by default, at least for "development" machines
2. let one choose the Apache user account for the services
3. let one choose the default document root
keywords:
Windows, Apache, FastCGI, mod_fcgid, FcgidInitialEnv, length, PATH, httpd.conf