有多种方式来配置一个 web 服务器以提供 PHP 服务。传统(并且糟糕的)的方式是使用 Apache 的 mod_php。Mod_php将PHP 绑定到 Apache 自身,但是 Apache 对于该模块功能的管理工作非常糟糕。一旦遇到较大的流量, 就会遭受严重的内存问题。

后来两个新的可选项很快流行起来:mod_fastcgi 和 mod_fcgid。 两者均保持一定数量的 PHP 执行进程, Apache 将请求发送到这些端口来处理 PHP 的执行。由于这些库限制了存活的 PHP 进程的数量, 从而大大减少了内存使用而没有影响性能。

一些聪明的人创建一个 fastcgi 的实现,专门为真正与 PHP 工作良好而设计,他们称之为 PHP-FPM。PHP 5.3.0 之前,为安装它, 你得跨越许多障碍,但幸运的是,PHP 5.3.3 的核心包含了 PHP-FPM,因此在 Ubuntu 12.04 上安装它非常方便。

如下示例是针对 Apache 2.2.22 的,但 PHP-FPM 也能用于其他 web 服务器如 Nginx。

安装 PHP-FPM 和 Apache

在 Ubuntu 12.04 上你可以使用如下命令安装 PHP-FPM 和 Apache:

user@localhost: sudo apt-get install apache2-mpm-worker

libapache2-mod-fastcgi php5-fpm

user@localhost: sudo a2enmod actions alias fastcgi

注意我们 必须 使用 apache2-mpm-worker,而不是 apache2-mpm-prefork 或 apache2-mpm-threaded。 接下来配置 Aapache 虚拟主机将 PHP 请求路由到 PHP-FPM 进程。将如下配置语句放入 Apache 配置文件(在 Ubuntu 12.04 上默认配置文件是 /etc/apache2/sites-available/default)。

AddHandler php5-fcgi .php

Action php5-fcgi /php5-fcgi

Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi

FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -idle-timeout 120 -pass-header Authorization

最后,重启 Apache 和 FPM 进程:

user@localhost: sudo service apache2 restart && sudo service php5-fpm

restart

进一步阅读

web服务器php配置实例,配置 Web 服务器提供 PHP 服务相关推荐

  1. 腾讯云服务器标准型SA1实例配置性能使用场景及注意事项分析

    腾讯云服务器标准型SA1实例介绍 标准型 SA1 实例是采用 AMD CPU的主机,具有超高性价比.提供了平衡的计算.内存和网络资源,是很多应用程序的最佳选择.官方说法与同配置的 Intel 服务器性 ...

  2. Java学习笔记·ServletFilter过滤器配置实例(web.xml配置方法)

    准备一个Servlet(Lesson2/lesson6_2.Sample7.java) package lesson6_2;import java.io.*; import java.util.*; ...

  3. (六)Web Storage的使用实例——简单web留言本

    简单web留言本 通过一个简单web留言本的示例来学习如何利用webStorage保存和读取大量的数据.    实现原理: 使用一个多行文本框来输入数据,单击按钮时将文本框中的数据保存到localSt ...

  4. Nginx基础配置实例配置实现

    配置的内容如下: ##全局块 begin## #配置允许运行Nginx工作进程的用户和用户组 user www; #配置运行Nginx进程生成的worker进程数 worker_processes 2 ...

  5. 玩转服务器(华为云)—购买配置登录篇

    目录 前言 购买选择篇 安全组配置篇 远程登录篇 提供服务篇 结语 导读: 对于程序员来说,每个人拥有一两个服务器进行学习是很有必要的,弹性云服务器(Elastic Cloud Server)是一种可 ...

  6. 显示并解析动态服务器值,Apache服务器安装配置

    Apache服务器安装 1.Apache服务器安装 在Linux系统下,apache服务器的安装方式比较灵活,可以使用二进制包安装,比如:rpm包.deb包.已编译好的包.也可以简单的使用yum工具进 ...

  7. 华为三层交换机路由配置案例_华为三层交换机配置实例

    1 华为三层交换机配置实例一例 服务器 1 双网卡,内网 IP: ,其它计算机通过其代理上网 PORT1 属于 VLAN1 PORT2 属于 VLAN2 PORT3 属于 VLAN3 VLAN1 的机 ...

  8. 华为三层交换机路由配置案例_华为三层交换机配置实例一例

    华为三层交换机配置实例一例 网络技术 2008-07-25 06:08:28 阅读 243 评论 0 字号:大中小 订阅 华为三层交换机配置实例一例 服务器 1 双网卡,内网 IP:192.168.0 ...

  9. 登录服务器修改数据库吗,如何修改服务器登录数据库 sa

    如何修改服务器登录数据库 sa 内容精选 换一换 为确保华为云关系型数据库服务发挥出最优性能,用户可根据业务需求对用户创建的参数模板中的参数进行调整.您可以修改用户创建的数据库参数模板中的参数值,但不 ...

最新文章

  1. java类为什么要建两个class_ClassLoader的几个概念、类和对象的解释
  2. centos6.4 安装mysql
  3. Linux的shell脚本函数教程
  4. 17.matlab中各种文件的I/O操作2——fopen操作
  5. cleanmymac能够很方便的清理mac上面没用的软件,尤其是这个清理大文件的功能
  6. HTML5-基础语法
  7. ##CSP 201803-2 碰撞的小球(C语言)100分
  8. MySQL查询优化之索引
  9. 十七、创建一个 WEB 服务器(一)
  10. 性能测试详解(三)Tomcat性能调优
  11. 鹏鹏:python 机器学习初学者 三剑客介绍。
  12. c++ MFC 画笔画一个圆形
  13. 【深度域自适应】DANN梯度反转层(GRL)理解
  14. 学号20189220余超 2018-2019-2 《密码与安全新技术专题》第一周作业
  15. 【学习笔记】汇编:关于CMP的使用实例
  16. wps 每页显示50行
  17. Openvino学习之openvino2022.1版安装配置
  18. 微信小程序——定义事件相关
  19. 《转》atheros无线驱动之:系统初始化
  20. 即时零售再加码,深耕蓝海的达达集团或将迎来市值新升浪?

热门文章

  1. python列表添加对象_python list append命令 添加对象
  2. 侧信道攻击,从喊666到入门之——Unicorn的环境构建
  3. MD1——2 Corner
  4. 【转】AndroidStudio升到最新版本(3.1.2)之后
  5. 如何在IIS添加MIME扩展类型
  6. .Net魔法堂:开启IIS的WebGarden、WebFarm和StateServer之旅
  7. CDOJ 28 补兵(kill)
  8. WinAPI: MoveWindow - 改变窗口的位置与大小
  9. php开发环境配置 iis6+php-5.2.1-Win32+mysql-5.0.18-win32+phpMyAdmin-2.7.0-pl2快速安装
  10. java poi doc转docx_POI动态插入数据到Word文档