百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

CentOS下通过yum搭建lnmp(单版本PHP)

off999 2025-01-18 23:09 18 浏览 0 评论

lnmp即 Linux + Nginx + Mysql + PHP,本文以 CentOS 7.x 为例介绍如何通过 yum 的方式搭建完整的 lnmp 环境。

实现目标

1、通过 yum 方式安装 nginx、mysql 8.0、php 7.4

2、安装 php 模块,部署网站,实现运行 php ,读取数据库

安装相应软件

1、安装 nginx 并部署网站

参考下方教程选择 yum 方式安装 nginx ,并且建立一个虚拟主机站点。

CentOS安装nginx与部署网站

2、安装 php 7.4

参考下方教程选择 yum 方式安装 php 。

CentOS下安装指定版本的PHP

3、安装 mysql 8.0 且完成修改 mysql root 初始密码操作

参考下方教程选择 yum 方式安装 mysql 。

CentOS下安装mysql

配置 nginx 实现支持 PHP 程序

1、安装php 组件 php-fpm

yum -y install php-fpm

2、(方式一:端口式)修改 php-fpm 及 nginx 配置,使其可以运行 php

2.1、修改 php-fpm 配置

# 编辑
vim /etc/php-fpm.d/www.conf

# 将 apache 改为 nginx(约24,26行)
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx

2.2、修改 nginx 虚拟主机站点配置支持运行 PHP(如 www.abc.com.conf)

# 站点主目录(省略部分内容)
root  /home/wwwroot/www.abc.com;

# 以上为示例配置,在 root 节点下添加以下内容(关键)
location ~ \.php$ {
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}

3、(方式二:套接字)修改 php-fpm 及 nginx 配置,使其可以运行 php

3.1、修改 php-fpm 配置

# 编辑
vim /etc/php-fpm.d/www.conf

# 将 apache 改为 nginx(约24,26行)
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx

# 注销原配置(约38行),前面加分号 ; 注销
;listen = 127.0.0.1:9000

# 添加以下配置
listen = /run/php-fpm/php74-fpm.sock

# 配置权限(约51行),去掉面前分号,将0660修改为0666
listen.mode = 0666

3.2、修改 nginx 虚拟主机站点配置支持运行 PHP(如 www.abc.com.conf)

# 站点主目录(省略部分内容)
root  /home/wwwroot/www.abc.com;

# 以上为示例配置,在 root 节点下添加以下内容(关键)
location ~ \.php$ {
    fastcgi_pass   unix:/run/php-fpm/php74-fpm.sock;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}

3.3、重启服务并设置权限

# 重启 php-fpm
systemctl restart php-fpm.service

# 重启 nginx
systemctl restart nginx.service

# 套接字文件权限(如权限报错可设置)
chmod 666 /run/php-fpm/php74-fpm.sock

4、建立 php 文件,输入域名测试是否正常运行 php 程序

# 建立php测试文件
vim /home/wwwroot/www.abc.com/phpinfo.php

# 输入以下内容并保存
<?php
phpinfo();
>

# 在浏览器输入域名进行测试

安装 php 组件 php-mysqli

如需连接 mysql 进行数据库读写操作,大部分 php 框架都需组件 mysqli ,可通过以下命令安装

yum -y install php-mysqli

设置开机自启动

# 开机自启动 php-fpm
systemctl enable php-fpm

# 开机自启动 nginx
systemctl enable nginx

# 开机自启动 mysql
systemctl enable mysqld

额外说明

1、如需安装其它组件,通过 yum 进行安装即可,格式如下

# 格式
yum install php-模块名

# 示例
yum install php-pdo

2、通过 phpmyadmin 管理数据库可能会报 Error during session start; 错误,通过以下命令设置 session 目录相应权限

chown -R nginx:nginx /var/lib/php/session

3、每次修改 php-fpm 或 nginx 及虚拟主机站点配置文件后,需重启 php-fpm 及 nginx 才能生效。

# 重启 php-fpm
systemctl restart php-fpm.service

# 重启 nginx
systemctl restart nginx.service

总结

通过以上方式即可搭建 lnmp 运行环境,示例中多为默认参数及配置,可在实际使用中根据情况进行调整,如添加更改账号及用户组、更改相关路径、安装 php 模块等。

相关推荐

python pip 命令 参数(python pip命令用不了)

usage:python[option]...[-ccmd|-mmod|file|-][arg]...Options(andcorrespondingenvironm...

Python 包管理:uv 来了!比 pip 快 100 倍的神器,开发者的终极选择?

为什么Python开发者需要uv?Python生态虽繁荣,但包管理一直是痛点:pip安装慢如蜗牛、依赖冲突让人头秃、虚拟环境配置繁琐……直到uv横空出世!这个用Rust语言打造的...

UV:Python包管理的未来已来!比pip快100倍的新选择

引言Python开发者们,是否厌倦了pip的缓慢安装速度?是否希望有一个更快、更现代、更高效的包管理工具?今天,我要向大家介绍一个革命性的Python包管理工具——UV!UV由Rust编写,是pip和...

「Python」 常用的pip命令和Django命令

pip命令如何根据关键词找到PyPI(Python包仓库)上的可用包#方法1:直接访问PyPI官网,输入关键词搜索#方法2#为何不用pipsearchdjango?因为这个命令已不可...

python包管理工具pip freeze详解(python工具包怎么用)

freeze就像其名字表示的意思一样,主要用来以requirement的格式输出已安装的包,这里我们主要讨论以下3个选项:--local、--user、--pathlocal--local选项一般用在...

python包管理工具pip config详解(python的pulp包)

pipconfig主要包含以下子命令:set、get、edit、list、debug、unset。下面我们逐一介绍下它们。pipconfigset这个命令允许我们以name=value的形式配...

pip常用命令,学Python不会这个寸步难行哦(26)

小朋友们好,大朋友们好!我是猫妹,一名爱上Python编程的小学生。欢迎和猫妹一起,趣味学Python。今日主题学习下pip的使用。pip什么是pippip全称PythonPackageIndex...

Python pip 包管理需知(python的包管理)

简介在Python编程中,pip是一个强大且广泛使用的包管理工具。它使我们能够方便地安装、升级和管理Python包。无论是使用第三方库还是分享自己的代码,pip都是我们的得力助手。本文将深入解析pip...

比pip快100倍的Python包安装工具(python如何用pip安装包)

简介uv是一款开源的Python包安装工具,GitHubstar高达56k,以性能极快著称,具有以下特性(官方英文原文):Asingletooltoreplacepip,pip-tool...

Python安装包总报错?这篇解决指南让你告别pip烦恼!

在Python开发中,pip是安装和管理第三方包的必备工具,但你是否经常遇到各种报错,比如无法创建进程、权限不足、版本冲突,甚至SSL证书错误?这些问题不仅浪费时间,还让人抓狂!别担心!本文整理了...

pip vs pipx: Python 包管理器,你选择哪个?

高效的包管理对于Python开发至关重要。pip和pipx是两个最常用的工具。虽然两者都支持安装Python包,但它们的设计和用例却大相径庭。本文将探讨这些差异,解释何时使用每种工具,并...

【python】5分钟掌握pip(包管理)操作

安装一个软件包从庞大的仓库中找到一个库,将其导入您的环境:pipinstallnumpy2.已安装软件包列表调查您领域内存在的库的概要,注意它们的版本:piplist3.升级软件包赋予已安装...

Python pip安装与使用步骤(python的pip安装方法)

安装和使用Python的包管理工具pip是管理Python包和依赖项的基础技能。以下是详细的步骤:安装pip使用系统包管理器安装Windows:通常,安装Python时会自动安装p...

Python自动化办公应用学习笔记3—— pip工具安装

3.1pip工具安装最常用且最高效的Python第三方库安装方式是采用pip工具安装。pip是Python包管理工具,提供了对Python包的查找、下载、安装、卸载的功能。pip是Python官方提...

Python文件压缩神器:ZipFile功能全解析,支持一键压缩和解压

在Python中处理ZIP文件时,zipfile模块是最常用的工具。它提供了创建、读取、修改ZIP文件的完整功能,无需依赖外部命令。本文将通过核心函数、实战案例和避坑指南,带你掌握这个高效的文件处理模...

取消回复欢迎 发表评论: