zoukankan      html  css  js  c++  java
  • 在IIS 5.1 或IIS6 中配置PHP 的FastCGI模式

    在IIS 5.1 或IIS6 中配置PHP 的FastCGI模式

    一、FastCGI是什么?
      FastCGI是语言无关的、可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能。众 所周知,CGI解释器的反复加载是CGI性能低下的主要原因,如果CGI解释器保持在内存中并接受FastCGI进程管理器调度,则可以提供良好的性能、 伸缩性、Fail-Over特性等等。

    二、FastCGI的工作原理:

      1、Web Server 启动时载入FastCGI进程管理器(IIS ISAPI或Apache Module);
      2、FastCGI进程管理器自身初始化,启动多个CGI解释器进程 (在任务管理器中可见多个php-cgi.exe)并等待来自Web Server的连接。
      3、当客户端请求到达Web Server时,FastCGI进程管理器选择并连接到一个CGI解释器。Web server将CGI环境变量和标准输入发送到FastCGI子进程php-cgi.exe。
      4、FastCGI子进程完成处理后将标准输出和错误信息从同一连接返回Web Server。当FastCGI子进程关闭连接时,请求便告处理完成。FastCGI子进程接着等待并处理来自FastCGI进程管理器(运行在 WebServer中)的下一个连接。 在正常的CGI模式中,php-cgi.exe在此便退出了。

      在上述情况中,你可以想象CGI通常有多慢。每一个Web请求PHP都必须重新解析php.ini、重新载入全部dll扩展并重初始化全部数据结构。 使用FastCGI,所有这些都只在进程启动时发生一次。一个额外的好处是,持续数据库连接(Persistent database connection)可以工作。

    三、在IIS 5.1 或IIS6 中配置PHP 的FastCGI模式

            假设你已经成功安装微软的IIS 5.1 或 IIS 6,接下来讲解如何配置PHP 的FastCGI 模式。

            首先,先安装适用于 IIS 5.1 或 IIS 6 的FastCGI 扩展。请到下面的链接下载相关FastCGI 扩展:

                     http://www.iis.net/downloads/default.aspx?tabid=34&g=6&i=1521

                      但你运行FastCGI 扩展安装程序时,它拷贝下列文件到"%WINDIR%/system32/inetsrv" 文件夹,并注册开启IIS 支持FastCGI 扩展。该安装程序将拷贝的文件列表是:

                           fcgiext.dllfcgiext.ini ,fcgiconfig.js

          其次,下载安装PHP。上一步安装的FastCGI 扩展完全兼容 PHP 4.4.x 和 PHP 5.x ,请你到http://www.php.net/downloads 下载并安装non-thread-safe PHP build available for Windows

           第三,配置FastCGI 扩展与PHP 协同工作。

                    方法一:使用脚本来自动配置。

                                   在CMD 命令行里进入"%WINDIR%/system32/inetsrv" 目录,执行如下命令:

                                     cscript fcgiconfig.js -add -section:"PHP" -extension:php -path:"C:/PHP/php-cgi.exe"
                                  

                                     cscript fcgiconfig.js -add -section:"PHP" -extension:php -path:"C:/PHP/php-cgi.exe" –site:1

                   方法二:手动配置

                                   1.在“开始”菜单“运行”里运行inetmgr.exe ,然后双击本地电脑图标,右击“网站”选择“属性”,单击“主目录”选项,点击“配置”按钮,单击”添加“按钮,单击”浏览“ 在 %WINDIR%/system32/inetsrv 里寻找fcgiext.dll

                                  2.在扩展名里输入 .php , 动作选择”限制为“,输入”GET,HEAD,POST“。确认”脚本引擎“和”检查文件是否存在“是否选择,如没选中,请选中。确认无误后,单击”确定“。

     

                                 3.配置fcigext.ini (温馨提示:它在%WINDIR%/system32/inetsrv 目录里)

                                    简单的在fcigext.ini 末尾添加如下内容即可:

                                                    [Types]

                                                     php=PHP

                                                     [PHP]

                                                    ExePath=c:/php/php-cgi.exe

                                     修改好fcigext.ini ,保存之。重启IIS 5.1 或 IIS 6 就可以使用PHP 的FastCGi 了。

          第四,写个简单的脚步测试PHP FastCGI 是否正常工作了。

                      在C:/Inetpub/wwwroot 目录创建info.php 文件,打开info.php ,填写如下内容:

                                <?php phpinfo(); ?>

                     保存info.php,然后在浏览器地址栏里输入http://localhost/info.php 回车便可看到如下页面:

                 OK!一切搞定,祝你在学习配置PHP FastCGI 中顺利!

                 最后,如你认为对你有所帮助,请收藏之吧。如需转载,请注明来处:http://hi.baidu.com/usen68/

  • 相关阅读:
    由一次自建库迁移到阿里云RDS引发的性能问题。
    pycharm2017自建注册服务器
    linux 邮件工具利器sendEmail时效超好
    python利用smtplib和MIMETYPE发送邮件
    如何去除本地文件与svn服务器的关联
    【转】nginx提示:500 Internal Server Error错误的解决方法
    Eclipse SVN插件安装
    Weblogic用户名密码获取
    Io 异常: The Network Adapter could not establish the connection
    Oracle修改字段名、字段数据类型
  • 原文地址:https://www.cnblogs.com/fengju/p/6173847.html
Copyright © 2011-2022 走看看