IIS中启用CGI来托管PHP和Python网站

IS中如果要托管PHP和Python的web站点,需要用到CGI来处理HTTP请求,默认情况IIS中是没有CGI模块的,需要在Windows server的服务器管理器(Server Manager)中安装CGI模块,步骤如下:

首先打开Server Manager,选择Add roles and Features

IIS中启用CGI来托管PHP和Python网站

然后到在选择Server Roles的步骤时,选择Web Server(IIS)下的Application Development,然后勾中CGI,之后点下一步跟随向导安装CGI到IIS

IIS中启用CGI来托管PHP和Python网站

CGI安装完毕后,我们打开IIS,可以发现在服务器节点下IIS多了两个模块CGI和FastCGI Settings,其中FastCGI Settings就可以用来新建一个Application托管Python和PHP的站点

IIS中启用CGI来托管PHP和Python网站

在FastCGI Settings中有几个Timeout的时间设置比较重要,其中Activity Timeout就类似于ASP.NET的Web.config中的httpRuntime节点下的executionTimeout,可以将Activity Timeout设置大点,防止http请求由于处理时间过长从而到导致服务器返回超时错误。其实可以将FastCGI Settings中的Activity Timeout、Idle Timeout和 Request Timeout这三个时间都设置大一点,防止请求超时。

IIS中启用CGI来托管PHP和Python网站

此外在IIS的CGI模块中也有个超时设置也可能会影响http的超时时间,建议也把这个超时设置成一个比较长的时间,如下图所示:

IIS中启用CGI来托管PHP和Python网站

这里我们设置了CGI中的Time-out为1个小时:

IIS中启用CGI来托管PHP和Python网站