nginx之php、php-fpm相关配置
想用nginx支持php项目?先搞定安装这关
要让Nginx顺利跑起PHP项目,第一步自然是安装Nginx本身,这个步骤比较常规,这里就不展开细说了。
免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈
咱们重点聊聊PHP和PHP-FPM的安装。这里有个经验之谈:尽量避免使用yum直接安装。为什么?因为通过yum安装后,你很可能找不到安装目录的具体位置,一旦安装过程出现问题,排查和后续调整会变得相当麻烦。
下面是一份经过整理的实操指南,供你参考:
1、下载PHP源码包
官方下载地址:http://www.php.net/downloads.php
2、安装PHP
tar -xvf php-5.5.13.tar.bz2
cd php-5.5.13
./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-opcache --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gettext --enable-mbstring --with-iconv --with-mcrypt --with-mhash --with-openssl --enable-bcmath --enable-soap --with-libxml-dir --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --with-curl --with-zlib --enable-zip --with-bz2 --with-readline --without-sqlite3 --without-pdo-sqlite --with-pear
执行配置命令时,可能会遇到一些依赖缺失的错误,别慌,逐一解决就好:
错误: configure error: xml2-config not found.
解决办法: 执行命令安装依赖:sudo yum install libxml2-devel。安装后可以通过 find / -name "xml2-config" 来确认是否安装成功。
错误: configure error: Cannot find OpenSSL's
解决办法: 安装OpenSSL开发包并创建软链接:
yum install openssl openssl-devel
ln -s /usr/lib64/libssl.so /usr/lib/
错误: configure: error: Please reinstall the BZip2 distribution
解决办法: yum install bzip2 bzip2-devel
错误: configure: error: Please reinstall the libcurl distribution -easy.h should be in /include/curl/
解决办法: yum -y install curl-devel
错误: configure: error: mcrypt.h not found. Please reinstall libmcrypt.
解决办法: sudo yum install libmcrypt libmcrypt-devel mcrypt mhash
错误: configure: error: Please reinstall readline - I cannot find readline.h
解决办法: sudo yum install readline-devel
解决完所有依赖问题后,就可以开始编译安装了:
make
make install
3、添加PHP命令到环境变量
编辑配置文件:vim /etc/profile
在文件末尾加入以下两行:
PATH=$PATH:/usr/local/php/bin
export PATH
要使改动立即生效,执行:. /etc/profile 或 source /etc/profile
可以分别通过以下命令查看环境变量和PHP版本,以验证是否成功:
echo $PATH
php -v
成功的话,php -v会输出类似如下信息:
PHP 5.5.13 (cli) (built: Jun 20 2014 11:11:26)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
4、配置并启动php-fpm
cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf
# 启动php-fpm
sudo /usr/local/php/sbin/php-fpm
5、修改Nginx配置文件以支持PHP
编辑Nginx的站点配置文件(例如:/etc/nginx/conf.d/default.conf),找到处理PHP请求的部分:
location / {
root web根目录;
index index.html index.htm index.php;
}
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME web根目录$fastcgi_script_name;
include fastcgi_params;
}
请注意: 务必将上述配置中的“web根目录”替换为你项目实际的根目录路径。
修改完成后,重启Nginx使配置生效:/etc/init.d/nginx restart
6、测试PHP解析
最后,在你的Web根目录下创建一个index.php文件,写入。然后在浏览器中访问你的服务器地址,如果能看到详细的PHP信息页面,恭喜你,Nginx已经成功支持PHP了。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
Go语言中Struct Tag详解:XML解析必备的字段标签机制
Go语言Struct Tag深度解析:XML数据绑定与字段映射的核心机制 Struct Tag是Go语言为结构体字段附加元数据的核心语法,广泛应用于XML、JSON等数据序列化场景。它通过反引号包裹的键值对进行声明,本质上是指导编码器与解码器如何精确映射结构体字段与外部数据格式。缺少它,Go程序将无
c#如何调用Python脚本_c#Python脚本的最佳实践与常见坑点
C 调用Python脚本:最佳实践与常见坑点解析 使用 Process Start 调用 Python 脚本:最直接但需注意路径与环境 在大多数情况下,Process Start 是实现C 调用Python脚本最快捷的方案。它无需引入额外的NuGet包,也不强制要求Python解释器必须配置在系统环
c#如何定义常量_c#定义常量的3种方式
C 常量定义:const、static readonly与静态类的实战指南 在C 编程实践中,常量的定义是基础但至关重要的环节。选择不当的常量声明方式,可能会为项目引入难以察觉的隐患。本文将深入解析C 中定义常量的三种核心方式:const、static readonly以及使用静态类进行封装,帮助你
c#如何使用MEF框架_c#MEF框架的正确用法与注意事项
CompositionContainer 初始化失败常因类型反射加载失败,主因是程序集版本 框架不匹配、DLL未显式加载或缺失部署依赖;Import为null则多因Catalog未包含对应Export、路径错误或契约不一致。 为什么 CompositionContainer 初始化失败常报“Unab
C#怎么压缩并解压ZIP文件_C#如何管理压缩包【实战】
C 怎么压缩并解压ZIP文件_C 如何管理压缩包【实战】 说到在C 里处理ZIP文件,一个核心原则是:System IO Compression 是最稳妥的 ZIP 压缩方案。这意味着,你需要显式设置压缩级别为 CompressionLevel Optimal,使用正确的 ZipArchiveMod
- 日榜
- 周榜
- 月榜
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10
相关攻略
2015-03-10 11:25
2015-03-10 11:05
2021-08-04 13:30
2015-03-10 11:22
2015-03-10 12:39
2022-05-16 18:57
2025-05-23 13:43
2025-05-23 14:01
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程
热门话题

