1、在此链接下载一个合适的mod_fcgid 文件,64位下载第一个,32位第二个。
http://www.apachelounge.com/download/
2、将解压后将文件中的 mod_fcgid.so 复制到apache的modules目录下面。
3、打开 httpd.conf 文件,添加如下内容,并修改 “php.ini的存放目录” 以及 “php-cgi的路径” :
LoadModule fcgid_module modules/mod_fcgid.so
<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi .php
#php.ini的存放目录
FcgidInitialEnv PHPRC "${INSTALL_DIR}/bin/php/php7.2.14/"
# 设置PHP_FCGI_MAX_REQUESTS大于或等于FcgidMaxRequestsPerProcess,防止php-cgi进程在处理完所有请求前退出
FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 500
#php-cgi每个进程的最大请求数
FcgidMaxRequestsPerProcess 500
#php-cgi最大的进程数
FcgidMaxProcesses 5
#最大执行时间
FcgidIOTimeout 120
FcgidIdleTimeout 120
#php-cgi的路径
FcgidWrapper "${INSTALL_DIR}/bin/php/php7.2.14/php-cgi.exe" .php
AddType application/x-httpd-php .php
</IfModule>
4、打开 httpd-vhosts.conf 文件,修改虚拟主机配置(注意:要添加ExecCGI和Require all granted)
<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot "F:/laravel/public"
<Directory "F:/laravel/public">
Options Indexes FollowSymLinks ExecCGI
Order allow,deny
Allow from all
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
5、重新启动 Apache
6、刷新页面
注意:php在fastcig协议模式下有个函数:fastcgi_finish_request(); 该函数可以在linux系统上使用,不可以在win系统上使用