我似乎可以通过使用或通过.php
直接映射到 IIS 来运行 PHP 脚本。\PHP\php-cgi.exe
\Windows\system32\inetsrv\fcgiext.dll
我无法分辨这两种方法之间的区别,除了通过使用fcgiext.dll
您可以选择为 cgi 设置自定义每个站点配置。
为什么我不应该将 php 直接映射到php-cgi.exe
?
答案1
它的速度非常慢。
fcgiext.dll 运行 IIS 的 FastCGI 插件,该插件使 PHP-CGI 进程池保持“热”状态(即正在运行),然后按顺序通过它们提供请求。
对于其他配置,对于每个请求,都会启动一个进程(速度不快),处理该请求,然后终止。
在 Windows 上,进程启动非常耗时;FastCGI 通过并行运行几个进程,通过它们推送大量请求,然后每 1000 个(可配置)请求终止它们(想象)来分摊进程启动/关闭的成本。
查找 IIS6 上的 FastCGI 以获取更多信息。