初学者的 Linux 安装 Nginx PHP fpm 配置教程
网上的很多 Linux 操作系统下安装 Nginx PHP 的教程都很老, 而且各种依赖, 对于初学者来说比较容易混淆, 所以, 我重新写了此篇博客, 用于介绍最简单的 Linux 下安装 Nginx PHP 的方法. 此文会经常更新, 保持与时俱进. 如果你不是在 ideawu.net 网站看到
网上的很多 Linux 操作系统下安装 Nginx PHP 的教程都很老, 而且各种依赖, 对于初学者来说比较容易混淆, 所以, 我重新写了此篇博客, 用于介绍最简单的 Linux 下安装 Nginx PHP 的方法.
此文会经常更新, 保持与时俱进. 如果你不是在 ideawu.net 网站看到本文, 请访问 ideawu.net, 阅读最新的版本.
安装 Ubuntu Server
你可能听过别的 Linux 发行版, 但如果你是初学者, 并且对 Nginx PHP 安装不了解, 我建议你安装 Ubuntu Server. 请到 Ubuntu 的官网下载最新版本的 ISO 文件, 我用的是 12.04.3-server-amd64.iso.
安装依赖软件
在 Ubuntu 下安装软件, 可以用 sudo aptitude 命令. 这是一个类似初学者的 Linux 安装 Nginx PHP fpm 配置教程形界面的软件, 启动后, 按 “/” 输入软件名进行搜索, 选中后按 “ ”, 再按 “g” 即可安装.
需要安装的依赖软件包是: libpcre3-dev, libxml2-dev, zlib1g-dev.
源码安装 Nginx
编译 Nginx
到 Nginx 的官网下载最新版本的 Nginx 源码, 当前(2013-11-11)的最新版本是 1.5.6, 未来会有升级, 所以下载的 wget 只是一个示例, 你应该替换成最新的版本.
wget http://nginx.org/download/nginx-1.5.6.tar.gz tar xzf nginx-1.5.6.tar.gz cd nginx-1.5.6 ./configure make sudo make install
Nginx 会被安装在 /usr/local/nginx 目录下.
启动 Nginx
sudo /usr/local/nginx/sbin/nginx
停止 Nginx
sudo /usr/local/nginx/sbin/nginx -s stop
验证 Nginx 是否已经启动
打开浏览器, 访问 http://127.0.0.1/ 看看网页是否能打开. 如果你在另一台机器上访问, 把 127.0.0.1 换成 Ubuntu 服务器的 IP 地址即可. 如下初学者的 Linux 安装 Nginx PHP fpm 配置教程
更多的 Nginx 配置文件的修改, 等我们安装完 PHP 之后再关心, 先使用默认的配置文件运行起来. 默认的配置文件在 /usr/local/nginx/conf/nginx.conf 文件.
源码安装 PHP fpm fastcgi
编译 PHP
同样, 到 PHP 的官网下载最新版本的 PHP 源码.
wget http://us1.php.net/get/php-5.5.5.tar.bz2/from/cn2.php.net/mirror tar xjf mirror cd php-5.5.5 ./configure --enable-fpm make sudo make install
PHP 的可执行文件(php, php-cgi)会被安装到 /usr/local/bin 目录下. 配置文件是 /usr/local/lib/php.ini, 这个文件并不存储, 你需要自己创建.
验证 PHP 是否已经安装成功
php -v
上面的命令应该有版本信息输出.
创建 php.ini 配置文件
sudo cp php.ini-production /usr/local/lib/php.ini
不过, 现在你还用不上, 等用的时候再修改这个文件.
修改 Nginx 配置文件支持 PHP
编译 Nginx 的配置文件 /usr/local/nginx/conf/nginx.conf, 加入下面的内容. 原配置文件里有类似的内容, 你加在那段内容的紧跟后面即可.
location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
然后重启 Nginx
sudo /usr/local/nginx/sbin/nginx -s reload
这时候, Nginx PHP 还不能工作, 你还需要启动 php-cgi 进程.
启动 php-cgi
/usr/local/bin/php-cgi -b 9000
验证 Nginx PHP 已经正常工作
首先, 你需要创建一个 PHP 脚本, 新建一个文件 /usr/local/nginx/html/index.php, 这个文件的内容只有一行:
<?php phpinfo();
然后修改它的文件属性
sudo chmod ugo+rwx -R /usr/local/nginx/html
然后, 用浏览器访问 http://127.0.0.1/index.php 你应该能看到 PHP 的信息, 如下初学者的 Linux 安装 Nginx PHP fpm 配置教程
用 fpm 方式启动 php-cgi 进程
刚才的一行命令虽然启动了 php-cgi, Nginx PHP 也正常工作了, 但这不是正式环境的做法, 只是一种临时方法. 正式的生产环境一般用 fpm 方式启动 php-cgi 为守护进程.
php-fpm 程序安装在 /usr/local/sbin/php-fpm.
创建 php-fpm.conf
PHP 默认安装了一个 php-fpm.conf.default 的模板文件, 需要将它改名:
sudo cp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf
然后修改 /usr/local/etc/php-fpm.conf, 将
;pid = run/php-fpm.pid
前面的分号(注释)去掉.
创建 nobody 用户
sudo groupadd nobody sudo useradd -g nobody nobody
启动和停止 php-fpm
# 启动 sudo /usr/local/sbin/php-fpm # 停止 sudo kill `cat /usr/local/var/run/php-fpm.pid`
这时候, php-cgi 已经作为守护进程启动了.
单独编译安装 PHP 模块
上面编译的 PHP 可能没有包含一些你需要的模块, 不过别担心, 你可以不必重新编译整个 PHP, 而是只编译和安装缺少的那个模块. 这也是 PHP 模块化的好处. 下面以单独安装 PHP 的 sockets 模块为例.
进入你的 PHP 源码的 ext/sockets 目录. ext 目录是所有模块的总目录. 然后执行
/usr/local/bin/phpize ./configure make sudo cp modules/sockets.so /usr/local/lib/php/extensions/no-debug-non-zts-20121212/
然后修改 php.ini 配置文件, 找到
;;;;;;;;;;;;;;;;;;;;;; ; Dynamic Extensions ; ;;;;;;;;;;;;;;;;;;;;;;
在其后面加上
extension=sockets.so
然后重启 php-fpm. 这样, sockets 模块就已经安装成功了.
Related posts:
- Nginx + PHP 配置和启动脚本
- Nginx 499 错误码以及 AJAX 调用失败
- Linux+Keepalived双机互备
- nginx-push-stream-module 笔记
- HBase 在 Linux 下安装和配置
你现在看的文章是: 初学者的 Linux 安装 Nginx PHP fpm 配置教程
Linode VPS - 美国虚拟主机 | IT牛人博客聚合网站

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

DeepSeek 是一款强大的智能搜索与分析工具,提供网页版和官网两种访问方式。网页版便捷高效,免安装即可使用;官网则提供全面产品信息、下载资源和支持服务。无论个人还是企业用户,都可以通过 DeepSeek 轻松获取和分析海量数据,提升工作效率、辅助决策和促进创新。

DeepSeek的安装方法有多种,包括:从源码编译(适用于经验丰富的开发者)使用预编译包(适用于Windows用户)使用Docker容器(最便捷,无需担心兼容性)无论选择哪种方法,请仔细阅读官方文档并充分准备,避免不必要的麻烦。

Visual Studio Code,也称为 VS Code,是一个免费的源代码编辑器 - 或集成开发环境 (IDE) - 可用于所有主要操作系统。 VS Code 拥有针对多种编程语言的大量扩展,可以轻松编写

本教程演示了如何使用PHP有效地处理XML文档。 XML(可扩展的标记语言)是一种用于人类可读性和机器解析的多功能文本标记语言。它通常用于数据存储

字符串是由字符组成的序列,包括字母、数字和符号。本教程将学习如何使用不同的方法在PHP中计算给定字符串中元音的数量。英语中的元音是a、e、i、o、u,它们可以是大写或小写。 什么是元音? 元音是代表特定语音的字母字符。英语中共有五个元音,包括大写和小写: a, e, i, o, u 示例 1 输入:字符串 = "Tutorialspoint" 输出:6 解释 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。总共有 6 个元

BITGet 是一款加密货币交易所,提供各种交易服务,包括现货交易、合约交易和衍生品。该交易所成立于 2018 年,总部位于新加坡,致力于为用户提供安全可靠的交易平台。BITGet 提供多种交易对,包括 BTC/USDT、ETH/USDT 和 XRP/USDT。此外,该交易所还在安全性和流动性方面享有盛誉,并提供多种功能,如高级订单类型、杠杆交易和 24/7 全天候客户支持。

欧易 OKX,全球领先的数字资产交易所,现推出官方安装包,提供安全便捷的交易体验。欧易 OKX 安装包无需通过浏览器访问,可直接在设备上安装独立应用程序,为用户打造稳定高效的交易平台。安装过程简便易懂,用户只需下载最新版本安装包,按照提示一步步操作即可完成安装。
