nginx的fastcgi模块配置与php-fpm配置记录

简介: nginx的fastcgi模块配置与php-fpm配置记录

一、安装fastcgi模块
1、yum install php-fpm,php-mysql,php-mbstring,php-gd,php-xml
php-fpm:PHP FastCGI Process Manager,基于fastcgi协议的php进程管理器。nginx可通过该程序与php完成动态数据交互.
26
php-fpm的工作方式类似于httpd的prefork模型
/etc/php-fpm.d/www.conf文件为php-fpm的主配置文件,主要配置项有:
listen = 127.0.0.1:9000 ##监听地址
listen.allowed_clients = 127.0.0.1 ###允许交互的客户端ip
user = apache
group = apache
pm = dynamic ###使用动态方法
pm.max_children = 50 ###一次请求允许的最多资源数
pm.start_servers = 5 ###刚开始时启动的进程
pm.min_spare_servers = 5 ###最少空闲进程数
pm.max_spare_servers = 35 ###最大空闲进程数

2、nginx的fastcgi模块指令:
27
fastcgi_pass 127.0.0.1:9000; ###是fpm服务监听的地址和端口
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name; ####指明当前fpm服务的root路径.如,请求http://localhost/index.php 就会对应这个选项中定义的/usr/local/nginx/html/index.php文件路径
include fastcgi_params;####表示还包括fastcgi_params文件中定义的参数
28

3.启动php-fpm.service进行测试:
systemctl start php-fpm.service
在fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;定义的路径下创建一个php测试页info.php文件,内容如下,表示输出php的相关信息:
29
浏览器输入服务器ip加测试页地址:
30
证明测试生效.

二、fastcgi缓存相关配置:
31
1、fastcgi_cache_path /var/cache/nginx/fastcgi levels=1:2 keys_zone=fcgicache:10m;####指明fastcgi的缓存文件路径,levels表示nginx的缓存机制创建一级目录与二级目录,keys_zone指明缓存键的区域名称及有效性时间为10分钟;
2、fastcgi_cache_valid 200 302 10m;
fastcgi_cache_valid 301 1h;
fastcgi_cache_valid any 1m;#####定义各http响应状态码及其缓存有效时间
3、 fastcgi_cache_key $request_uri;###表示使用http请求的uri缓存后作为缓存键
4、fastcgi_cache fcgicache;####指明使用的fastcgi缓存的空间名
要使用缓存时,至少要配置好三个参数:
fastcgi_cache
fastcgi_cache_key
fastcgi_cache_valid

配置好fastcgi缓存后,可使用压力测试命令对缓存进行测试:
ab -c 10 -n 100 http:/ip/info.php :
![32]
测试可得出缓存能加速一定的响应时间。
nginx通过fastcgi模块与后端的php服务器(php-fpm.service)进行交互,完成动态数据处理后将动态数据与静态数据一起响应给客户端.

目录
相关文章
|
应用服务中间件 PHP nginx
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
简介: 本教程介绍如何基于 Dragonwell 的 Ubuntu 镜像创建一个运行 Nginx 的 Docker 容器。首先从阿里云容器镜像服务拉取基础镜像,然后编写 Dockerfile 确保 Nginx 作为主进程运行,并暴露 80 端口。最后,在包含 Dockerfile 的目录下构建自定义镜像并启动容器,确保 Nginx 在前台运行,避免容器启动后立即退出。通过 `docker build` 和 `docker run` 命令完成整个流程。
463 25
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
|
负载均衡 应用服务中间件 API
Nginx:location配置模块的用法(一)
Nginx:location配置模块的用法(一)
1700 2
|
12月前
|
应用服务中间件 PHP nginx
当你的nginx服务器和php服务器不在一起的时候,这个nginx 的root目录问题
两个服务器的网站代码目录需要对齐,docker容器里面也是一样
|
tengine 应用服务中间件 Linux
Tengine、Nginx安装PHP命令教程
要在阿里云Linux上安装PHP,请先更新YUM源并启用PHP 8.0仓库,然后安装PHP及相关扩展。通过`php -v`命令验证安装成功后,需修改Nginx配置文件以支持PHP,并重启服务。最后,创建`phpinfo.php`文件测试安装是否成功。对于CentOS系统,还需安装EPEL源和Remi仓库,其余步骤类似。完成上述操作后,可通过浏览器访问`http://IP地址/phpinfo.php`测试安装结果。
|
缓存 应用服务中间件 nginx
安装nginx-http-flv-module模块
本文介绍如何为Nginx安装`nginx-http-flv-module`模块。此模块基于`nginx-rtmp-module`二次开发,不仅具备原模块的所有功能,还支持HTTP-FLV播放、GOP缓存、虚拟主机等功能。安装步骤包括:确认Nginx版本、下载相应版本的Nginx与模块源码、重新编译Nginx并加入新模块、验证模块安装成功。特别注意,此模块已包含`nginx-rtmp-module`功能,无需重复编译安装。
1351 3
|
负载均衡 应用服务中间件 Linux
在Linux中,常用的 Nginx 模块有哪些,常来做什么?
在Linux中,常用的 Nginx 模块有哪些,常来做什么?
|
缓存 前端开发 应用服务中间件
Nginx:location配置模块的用法(二)
Nginx:location配置模块的用法(二)
1305 2
|
应用服务中间件 nginx C++
nginx的cgi模块
nginx的cgi模块
252 0
|
应用服务中间件 Linux nginx
FFmpeg开发笔记(四十)Nginx集成rtmp模块实现RTMP推拉流
《FFmpeg开发实战》书中介绍了如何使用FFmpeg向网络推流,简单流媒体服务器MediaMTX不适用于复杂业务。nginx-rtmp是Nginx的RTMP模块,提供基本流媒体服务。要在Linux上集成rtmp,需从官方下载nginx和nginx-rtmp-module源码,解压后在nginx目录配置并添加rtmp模块,编译安装。配置nginx.conf启用RTMP服务,监听1935端口。使用ffmpeg推流测试,如能通过VLC播放,表明nginx-rtmp运行正常。更多详情见书本。
659 0
FFmpeg开发笔记(四十)Nginx集成rtmp模块实现RTMP推拉流
|
NoSQL 关系型数据库 MySQL
linux服务器重启php,nginx,redis,mysql命令
linux服务器重启php,nginx,redis,mysql命令
303 1