1、根据 apache 版本下载对应的 mod_fcgid-2.3.9-win64-VC14.zip
https://www.apachelounge.com/download/
解压fcgid,取其mod_fcgid.so至modules目录 。
PHP各版本解压到不同目录并配置,任意位置,方便即可。
2.打开httpd.conf
3.增加配置(尾部或中部即可)
#加载fcgid扩展模块(额外说明,fcgid根据实际apache版本对应,apache2版本测试2.3.6正常)
LoadModule fcgid_module modules/mod_fcgid.so
#添加映射
AddHandler fcgid-script .fcgi .php
# 设置PHP_FCGI_MAX_REQUESTS大于或等于FcgidMaxRequestsPerProcess,防止php-cgi进程在处理完所有请求前退出
FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000
#php-cgi每个进程的最大请求数
FcgidMaxRequestsPerProcess 1000
#php-cgi最大的进程数
FcgidMaxProcesses 15
#最大执行时间
FcgidIOTimeout 120
FcgidIdleTimeout 120
#限制最大请求字节 (单位b)
FcgidMaxRequestLen 2097152
#将以php后缀的文件定义类型为application/x-httpd-php
AddType application/x-httpd-php .php
#------这里是默认虚拟主机配置(全局默认使用的PHP版本配置)
#php.ini的存放目录
FcgidInitialEnv PHPRC "D:/php5.4.4/"
#php-cgi的路径
FcgidWrapper "D:/php5.4.4/php-cgi.exe" .php
4.配置好fcgid模块之后,还需要做一个处理: 找到配置运行目录属性的地方,在option中添加一个属性ExecCGI
5. 虚拟主机文件配置 (每个虚拟主机独立的配置段中只需要更改其配置版本路径即可,以下配置为PHP5.3.1虚拟主机配置)
<VirtualHost *:80>
ServerName "apihost"
ServerAlias www.apihost.com api.apihost.com
FcgidInitialEnv PHPRC "D:/php5.3.1/"
FcgidWrapper "D:/php5.3.1/php-cgi.exe" .php
DocumentRoot "D:/WEB/apihost/wwwroot/"
ErrorLog "D:/WEB/apihost/log/error.log"
CustomLog "D:/WEB/apihost/log/access.log" common
</VirtualHost>
6. 重启Apache完工!
其他参考: https://www.cnblogs.com/xiaoyaoxia/archive/2011/09/29/2195434.html