服务器server2008 安装IIS7,没有出现 “FastCGI设置” 图标,是设置错误造成的,解决方法如下:
1、首先右击开始菜单,点击管理工具,找到服务器管理器点击打开。
2、找到左上角的角色点击,右边会出现一个面板,单击角色下面的web服务器(iis)。
3、进去后下拉找到角色服务,可以看到安装了哪些功能,有哪些功能未安装,这里找到http重定向,然后右边点击添加角色。
4、选择好要安装的功能http重定向,然后点击下一步。
5、过一会就会提示添加成功,可以看到安装了哪些功能,然后就可以去使用这些功能了。
1. cgi
- 通用网关接口,就是外部应用程序(cgi程序)与web服务器之间的接口标准。
- nginx是内容分发者,如果是请求index.php,根据配置文件内容得知不是静态文件,就会去找对应的cgi程序进行解析
- cgi就是规定要传那些数据,以什么格式传递给后方进行处理的协议
- cgi工作模式,一个请求发送过来,启动cgi解释器(创建进程)->逻辑处理 ->退出 (fork and exec 模式) 每次都需要重新创建进程,加载配置,浪费系统资源
2. fastcgi
- 快速通用网关接口,常驻型的cgi,不用每次都fork进程,其会使cgi解解释器进程常驻内存,所以性能较高
- master-worker模型,服务器启动时载入fastcgi进程管理器
- fastcgi会进行自身初始化,初始化时会创建多个进程
- 请求到达web服务器后,fastcgi进程管理器会选择并通过socket连接到一个cgi解释器
3. php-cgi
- php自带的cgi管理器
- php-cgi的缺点,不能平滑重启,需要重启php-cgi才能使php.ini生效
4. php-fpm
- php-fpm是php的一种fastcgi的实现,管理php的fastcgi进程池
- 能够调度php-cgi程序
- 能够实现平滑重启
- php-fpm创建一个master进程,然后创建进程池,监听socket,fork出多个子进程,子进程各自accept请求,php-fpm的子进程同时只能响应一个请求,处理完一个请求才可以accept下一个请求,多进程,同步阻塞模型
- master和worker进程之间不直接进行通信,master通过共享内存获取worker进程信息,master进程发送信号通知worker进程
- php-fpm可以同时监听多个端口,每个端口对应一个worker pool
- worker是cgi程序,php-fpm是fastcgi协议的php是实现
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)