PHP与WEB服务工作的三种方式
2008-12-23 14:19
302 查看
WEB 服务器可以用三种方法来利用 PHP 生成 WEB 页面。
第一种方法是将 PHP 用作一个“外壳”。以这种方法运行,PHP 会为向您的 WEB 服务器提出的每个 PHP 页面请求生成并结束一个 PHP 解释器线程。由于该线程会随每个请求的结束而结束,因此任何在这个线程中利用的任何资源(例如指向 SQL 数据库服务器的连接)都会随线程的结束而关闭。在这种情况下,您使用永久连接不会获得任何地改变――因为它们根本不是永久的。
第二,也是最常用的方法,是把 PHP 用作多过程 WEB 服务器的一个模块,这种方法目前只适用于 Apache。对于一个多过程的服务器,其典型特征是有一个父过程和一组子过程协调运行,其中实际生成 WEB 页面的是子过程。每当客户端向父过程提出请求时,该请求会被传递给还没有被其它的客户端请求占用的子过程。这也就是说当相同的客户端第二次向服务端提出请求时,它将有可能被一个不同的子过程来处理。在开启了一个永久连接后,所有请求 SQL 服务的后继页面都能够重新使用这个已经建立的 SQL Server 连接。
最后一种方法是将 PHP 用作多线程 WEB 服务器的一个插件。目前 PHP 4 已经支持 ISAPI、WSAPI 和 NSAPI(在 Windows 环境下),这些使得 PHP 可以被用作诸如 Netscape FastTrack (iPlanet)、Microsoft's Internet Information Server (IIS) 和 O'Reilly's WebSite Pro 等多线程 WEB 服务器的插件。永久连接的行为和前面所描述的多过程模型在本质上是相同的。注意 PHP 3 不支持 SAPI。
第一种方法是将 PHP 用作一个“外壳”。以这种方法运行,PHP 会为向您的 WEB 服务器提出的每个 PHP 页面请求生成并结束一个 PHP 解释器线程。由于该线程会随每个请求的结束而结束,因此任何在这个线程中利用的任何资源(例如指向 SQL 数据库服务器的连接)都会随线程的结束而关闭。在这种情况下,您使用永久连接不会获得任何地改变――因为它们根本不是永久的。
第二,也是最常用的方法,是把 PHP 用作多过程 WEB 服务器的一个模块,这种方法目前只适用于 Apache。对于一个多过程的服务器,其典型特征是有一个父过程和一组子过程协调运行,其中实际生成 WEB 页面的是子过程。每当客户端向父过程提出请求时,该请求会被传递给还没有被其它的客户端请求占用的子过程。这也就是说当相同的客户端第二次向服务端提出请求时,它将有可能被一个不同的子过程来处理。在开启了一个永久连接后,所有请求 SQL 服务的后继页面都能够重新使用这个已经建立的 SQL Server 连接。
最后一种方法是将 PHP 用作多线程 WEB 服务器的一个插件。目前 PHP 4 已经支持 ISAPI、WSAPI 和 NSAPI(在 Windows 环境下),这些使得 PHP 可以被用作诸如 Netscape FastTrack (iPlanet)、Microsoft's Internet Information Server (IIS) 和 O'Reilly's WebSite Pro 等多线程 WEB 服务器的插件。永久连接的行为和前面所描述的多过程模型在本质上是相同的。注意 PHP 3 不支持 SAPI。
相关文章推荐
- IIS web服务实现虚拟主机的三种方式
- 导入文件的三种方式及分析web服务日志计算元素字节大小案例
- web server使用php生成web页面的三种方式
- php获取远程图片的三种方式
- PHP页面跳转的三种方式
- 使用 PHP 开发基于 Web 服务的应用程序
- jedis针对三种redis工作模式的连接方式
- Web学习之文本框的三种实现方式
- PPPOE、Web+Portal、802.1x常见三种认证方式对比
- Webview截屏三种方式
- php和html混编的三种方式
- android中Webview实现截屏三种方式小结
- PHP发送POST请求的三种方式
- 启动oracle服务有三种方式:
- 三种Web开发主流技术ASP-PHP-JSP的评价
- PHP使用PDO抽象层获取查询结果三种方式
- WebService 创建客户端访问服务端面的三种方式
- PHP使用socket方式发送邮件,无需SMTP服务
- 使用PHP 开发基于Web 服务的应用程序
- SQL SERVER 2008 后可能不再支持本地WEB服务方式