热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PHP5.4或引入PHP-FPMnginx运行PHP更轻松

nginx通过FastCGI运行PHP比Apache包含PHP环境有明显的优势,最近有消息称,PHP5.4将很有可能把PHP-FPM补丁包含在内核里,nginx服务器平台上运行PHP将更加轻松

前面我曾介绍过Nginx + PHP-FPM + APC=绝妙的组合,最近有消息称,PHP5.4将很有可能把PHP-FPM ( PHP FastCGI进程管理器 )补丁包含在内核里。这个新闻对于在nginx服务器平台上运行PHP的人们来说是一个极大地惊喜。或许你会有这样的疑问:“PHP-FPM是什么东西?我们为什么要关注它?”

PHP-FPM是为PHP内核编写的补丁,用来根据需要处理FastCGI进程的启动,停止以及重启。这是非常关键的功能,因为nginx只能通过FastCGI实现同PHP的接口。nginx不能像Apache那样把所有的PHP环境加载到自身。nginx通过FastCGI运行PHP比Apache包含PHP环境有明显的优势:

◆较低的内存占用率(因为nginx单独运行时不用加载整个PHP环境)。

◆轻松地管理用户权限( 因为PHP可以在你的服务器进程中管理不同的用户)。

◆当PHP崩溃时,nginx可以照常运行。

它的缺点是,相比之下需要安装及设置mod_php,nginx,PHP和FastCGI。在过去,这种安装工作需要从LightTPD工程中增选spawn-fcgi脚本,然后使用它启动FastCGI进程。可是这种安装存在一些问题:它很脆弱(当进程停止之后可能无法正常重启)而且这种安装方法非常繁琐。安装并配置好nginx之后你还需要下载LightTPD,针对性地设置脚本,将其设置为自动启动,然后保障这些同时正常地运行。如果你习惯于“拿来主义”,开箱即用mod_php,那么也许会让你确信nginx是个劣质品,尤其是当你刚刚升级了服务器替换了原来的精简的平台的时候。

使用PHP-FPM。这个补丁会把FastCGI进程管理功能嵌入到PHP中。所以当你使用FPM补丁编译PHP并且选定了enalbe-fpm选项的时候,nginx会根据需要控制PHP进程的启动和停止。这样就省去了以前繁琐的配置步骤了。当然,对于喜欢省事儿的网站开发人员来说手动配置补丁和编译PHP代码还是有点繁琐。现在我要告诉大家此新闻给我们带来的惊喜:PHP5.4将会把FPM补丁直接包含到PHP工程的内核里面!

这意味着你只需要下载PHP就能编译了。你不再需要设置enalbe-fpm,不再需要考虑如何与nginx同步的问题,还有努力采取与Apache相同设置的问题。

也许你曾经尝试过在nginx平台上运行PHP,而且对其繁破口大骂过。我要向你郑重建议去试一下PHP-FPM。虽然它现在仍然存在一点问题,但是它时时刻刻在进步的。在此期间,也许你能体会到同在街头玩耍的小孩子突然得到一个超酷的玩具一般的惊喜。


推荐阅读
  • 本文详细介绍如何通过修改配置文件来隐藏Apache、Nginx和PHP的版本号,从而增强网站的安全性。我们将提供具体的配置步骤,并解释这些设置的重要性。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • PHP 5.5.0rc1 发布:深入解析 Zend OPcache
    2013年5月9日,PHP官方发布了PHP 5.5.0rc1和PHP 5.4.15正式版,这两个版本均支持64位环境。本文将详细介绍Zend OPcache的功能及其在Windows环境下的配置与测试。 ... [详细]
  • 本文详细介绍如何利用已搭建的LAMP(Linux、Apache、MySQL、PHP)环境,快速创建一个基于WordPress的内容管理系统(CMS)。WordPress是一款流行的开源博客平台,适用于个人或小型团队使用。 ... [详细]
  • PHP 过滤器详解
    本文深入探讨了 PHP 中的过滤器机制,包括常见的 $_SERVER 变量、filter_has_var() 函数、filter_id() 函数、filter_input() 函数及其数组形式、filter_list() 函数以及 filter_var() 和其数组形式。同时,详细介绍了各种过滤器的用途和用法。 ... [详细]
  • 本文详细介绍了在 Windows 7 系统中配置 Nginx 1.10.3 和 PHP 7.1.1 NTS 的步骤,包括修改 PHP 配置文件、处理依赖项以及创建批处理脚本启动和停止服务。重点解释了如何解决常见的运行时错误。 ... [详细]
  • This guide provides a comprehensive step-by-step approach to successfully installing the MongoDB PHP driver on XAMPP for macOS, ensuring a smooth and efficient setup process. ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 如何在PHPCMS V9中实现多站点功能并配置独立域名与动态URL
    本文介绍如何在PHPCMS V9中创建和管理多个站点,包括配置独立域名、设置动态URL,并确保各子站能够正常运行。我们将详细讲解从新建站点到最终配置路由的每一步骤。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • 本文探讨了如何优化和正确配置Kafka Streams应用程序以确保准确的状态存储查询。通过调整配置参数和代码逻辑,可以有效解决数据不一致的问题。 ... [详细]
  • 本文介绍了如何使用PHP代码实现微信平台的媒体素材上传功能,详细解释了API接口的使用方法和注意事项,确保文件路径正确以避免常见的错误。 ... [详细]
  • Nginx 反向代理与负载均衡实验
    本实验旨在通过配置 Nginx 实现反向代理和负载均衡,确保从北京本地代理服务器访问上海的 Web 服务器时,能够依次显示红、黄、绿三种颜色页面以验证负载均衡效果。 ... [详细]
author-avatar
zhoukaipc
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有