ngx-php 安装指南:在Nginx上嵌入PHP7/PHP8脚本
项目介绍
ngx-php 是一个高效率Web服务器Nginx的扩展模块,它实现了嵌入式的PHP7和PHP8脚本处理能力,用于解析Nginx的location指令和变量。该项目受到ngx_lua模块的设计灵感启发,旨在提供一种非阻塞式的服务模式,相比传统的php-cgi、mod_php、php-fpm以及hhvm,在性能上有显著优势。ngx-php并非要替代现有解决方案,而是为用户提供新的选择。此外,还有一个遗留版本ngx_php5,记录了开发者早期的实践代码,同样具有参考价值。
项目下载位置
项目托管于GitHub,您可以从以下地址访问并下载:
https://github.com/rryqszq4/ngx-php.git
通过Git命令获取最新源码:
git clone https://github.com/rryqszq4/ngx-php.git
安装环境配置
环境需求
- 操作系统:Linux(不支持Windows作为编译环境)
- PHP:7.* 或 8.3 及以上版本
- Nginx:1.4.7 至 1.25.x系列
- 需要其他依赖如cmake等工具
由于文章格式限制,无法展示图片,但以下是文字步骤指导。
图片示例提示
在此环节,通常需要屏幕截图来展示配置文件编辑、终端命令执行情况等,但在文本环境中,请按照文字指示手动操作。
项目安装方式
步骤一:准备PHP环境
# 以安装PHP7.3为例
wget http://php.net/distributions/php-7.3.10.tar.gz
tar xf php-7.3.10.tar.gz
cd php-7.3.10
./configure --prefix=/your/php/install/path --enable-embed
make && make install
步骤二:下载并配置Nginx
wget http://nginx.org/download/nginx-1.12.2.tar.gz
tar -zxvf nginx-1.12.2.tar.gz
cd nginx-1.12.2
export PATH_TO_PHP_CONFIG=/your/php/install/path/bin/php-config
# ... 继续配置Nginx,并添加ngx-php模块到配置过程
完整的Nginx配置过程涉及更多详细步骤,包括设置PHP相关路径和模块。
步骤三:编译安装ngx-php
确保已正确配置了PHP和Nginx的路径,然后继续编译安装ngx-php模块到Nginx中。
# 在Nginx配置时加入模块路径
./configure --add-module=path/to/ngx-php/third_party/ngx_devel_kit --add-module=path/to/ngx-php
make && make install
最后,调整Nginx配置文件以加载ngx-php模块,启动Nginx服务。
项目处理脚本
在Nginx配置中,你可以使用如下的指令来调用PHP脚本:
server {
listen 80;
server_name example.com;
location /example {
content_by_php_block {
<?php echo "Hello from ngx-php!"; ?>
}
}
}
这段脚本示例显示了一个简单的PHP响应逻辑,当访问example.com/example
时,Nginx将通过ngx-php模块执行PHP代码并返回结果。
请注意,实际部署时务必根据当前系统环境和软件版本微调安装步骤,保证所有依赖项匹配。本教程提供了一个基础框架,详细配置可能因具体环境而异。