首先需安装PHP及PHP-FPM服务,再配置Nginx的server块以支持.php文件解析,通过创建info.php测试页面验证集成效果,随后优化PHP-FPM进程参数提升性能,并启用OPcache减少脚本解析开销,最终实现Nginx正确解析PHP动态内容。

如果您在Nginx服务器上部署动态网站时发现PHP脚本无法解析,可能是由于PHP未正确集成到Nginx服务中。以下是完成Nginx与PHP协同工作的配置流程。
本文运行环境:Dell XPS 13,Ubuntu 22.04
PHP需要通过PHP-FPM(FastCGI Process Manager)与Nginx通信,因此必须确保已安装PHP及对应版本的FPM模块。
1、执行命令 sudo apt update 更新软件源列表。
立即学习“PHP免费学习笔记(深入)”;
2、运行 sudo apt install php php-fpm 安装PHP核心包和FPM服务。
3、安装完成后,系统将自动启动php8.1-fpm(或对应版本)服务并设置开机自启。
需要修改Nginx的server块配置,使其能识别.php文件并转发给PHP-FPM处理。
1、编辑默认站点配置文件:sudo nano /etc/nginx/sites-available/default。
2、在server块中找到location /段落,在其中添加或确认存在如下内容:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}
3、保存文件后退出编辑器,并执行 sudo nginx -t 检查语法是否正确。
4、重启Nginx服务:sudo systemctl reload nginx 以应用更改。
创建一个PHP探针文件用于验证Nginx能否成功传递请求至PHP引擎执行。
1、使用命令 echo "" | sudo tee /var/www/html/info.php 生成测试页面。
2、打开浏览器访问 http://your_server_ip/info.php。
3、若页面显示PHP配置信息表格,则表明PHP已成功集成。
4、测试完成后,为安全起见应删除该文件:sudo rm /var/www/html/info.php。
调整PHP-FPM的子进程数量和资源分配策略可提升并发响应能力。
1、编辑主池配置文件:sudo nano /etc/php/8.1/fpm/pool.d/www.conf。
2、查找并修改以下参数:
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
3、上述设置允许进程按负载动态伸缩,避免内存过度占用。
4、保存更改后执行 sudo systemctl restart php8.1-fpm 生效新配置。
OPcache通过将编译后的PHP脚本存储在共享内存中,减少重复解析开销。
1、安装扩展模块:sudo apt install php-opcache。
2、编辑配置文件:sudo nano /etc/php/8.1/fpm/php.ini。
3、确保包含以下启用项:
opcache.enable=1
opcache.memory_consumption=256
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=20000
opcache.validate_timestamps=1
opcache.revalidate_freq=60
4、修改完成后重启PHP-FPM服务使配置生效。
以上就是nginx怎么用php_Nginx服务器PHP环境配置与优化方法的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号