CentOS配置LNMP环境(基于PHP 8.2)
1.安装 EPEL 仓库和 Remi 仓库:
sudo yum install epel-release
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
2.启用 Remi 仓库中的 PHP 8.2:
sudo yum install yum-utils
sudo yum-config-manager --enable remi-php82
3.安装 Nginx:
sudo yum install nginx
4.启动 Nginx 服务:
sudo systemctl start nginx
5.配置 Nginx 开机自启动:
sudo systemctl enable nginx
6.安装 MariaDB:
sudo yum install mariadb mariadb-server
7.启动 MariaDB 服务:
sudo systemctl start mariadb
8.配置 MariaDB 开机自启动:
sudo systemctl enable mariadb
9.运行 MariaDB 安全脚本:
sudo mysql_secure_installation
按照提示设置 MariaDB 的 root 密码和其他选项。
10.安装 PHP 8.2 和相关扩展:
sudo yum install php php-fpm php-opcache php-gd php-curl php-mysqlnd php-pdo php-xml php-json
11.配置 PHP-FPM:
打开 /etc/php-fpm.d/www.conf
文件:
sudo vim /etc/php-fpm.d/www.conf
找到并修改以下行:
user = nginx
group = nginx
listen = /var/run/php-fpm/php-fpm.sock
将 user
和 group
设置为 nginx
,将 listen
设置为 /var/run/php-fpm/php-fpm.sock
。
12.启动 PHP-FPM 服务:
sudo systemctl start php-fpm
13.配置 PHP-FPM 开机自启动:
sudo systemctl enable php-fpm
14.配置 Nginx:
打开 /etc/nginx/conf.d/default.conf
文件:
sudo vim /etc/nginx/conf.d/default.conf
将以下内容复制到文件中:
server {
listen 80;
server_name localhost;
root /usr/share/nginx/html;
location / {
index index.php index.html index.htm;
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
保存并关闭文件。
15.重启 Nginx 服务并验证:
sudo systemctl restart nginx
现在,您可以在 /usr/share/nginx/html
目录下创建一个 PHP 文件,并在浏览器中访问它来测试您的 LNMP 环境是否正常工作。
测试 PHP 是否正常工作,方法是创建一个 PHP 文件并在浏览器中访问:
sudo vim /usr/share/nginx/html/info.php
在文件中输入以下内容:
<?php phpinfo(); ?>
保存并关闭文件。然后在浏览器中访问 http://your_server_ip/info.php
,如果一切正常,您应该能够看到 PHP 信息页面。
作者:wanghongwei
版权声明:本作品遵循<CC BY-NC-ND 4.0>版权协议,商业转载请联系作者获得授权,非商业转载请附上原文出处链接及本声明。
分类:
Nginx
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?