“LNMP环境搭建实战指南:从零开始配置CentOS 7下的Nginx、MySQL与PHP“
目录
1.前言
2.准备工作
2.1.环境信息
2.2.关闭SELinux和firewalld
3.安装Nginx
3.1.运行以下命令,安装Nginx
3.2.运行以下命令,查看Nginx版本
4.安装MySQL
4.1.更新秘钥
4.2.配置MySQL的YUM仓库
4.3.安装MySQL
4.4.查看MySQL版本
4.5.启动MySQL
4.6.登陆MySQL后创建wordpress数据库
5.安装PHP
5.1.配置remi仓库
5.2.执行命令安装PHP以及相关的库
5.3.安装PHP环境
5.4.查看PHP版本
6.修改Nginx配置文件以支持PHP
6.1.运行以下命令,备份Nginx配置文件
6.2.打开Nginx配置文件
6.3.添加配置信息
6.4.启动Nginx服务
7.配置PHP
7.1.配置php测试文件
7.2.启动php-fpm
8.测试访问LNMP配置信息页面
9.总结
1.前言
在当今快速发展的互联网时代,高性能、高效率的网站部署环境成为了开发者和运维人员不可或缺的工具。LNMP(Linux, Nginx, MySQL, PHP)栈,作为一种流行且强大的Web服务解决方案,凭借其卓越的并发处理能力、资源高效利用以及灵活的可扩展性,成为众多企业和开发者的首选平台。
本实战指南旨在手把手教你如何在CentOS 7操作系统下从零开始搭建LNMP环境。我们将深入浅出地介绍每一个组件——稳定高效的Nginx作为HTTP和反向代理服务器,强大的MySQL数据库管理系统存储与管理数据,以及动态网页开发的核心——PHP语言引擎。通过本教程,你不仅能学会如何安装和配置这些组件,还能了解到如何优化它们以达到最佳性能,确保你的Web应用能够迅速响应、安全可靠地运行。
无论你是刚踏入Web开发领域的新人,还是寻求升级现有技术栈的资深开发者,本指南都将为你铺设一条清晰的学习路径,让你在实战中掌握LNMP环境搭建的艺术,为你的项目部署打下坚实的基础。让我们一起启程,构建属于你自己的高性能Web服务环境吧!
2.准备工作
2.1.环境信息
Centos | NGINX | MySQL | PHP |
CentOS Stream release 9 | nginx/1.20.1 | 3.0.37 | 8.0.30 |
2.2.关闭SELinux和firewalld
sudo systemctl stop firewalld
sudo setenforce 0
3.安装Nginx
3.1.运行以下命令,安装Nginx
sudo yum -y install nginx
3.2.运行以下命令,查看Nginx版本
nginx -v
4.安装MySQL
4.1.更新秘钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023
4.2.配置MySQL的YUM仓库
rpm -Uvh http://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm
4.3.安装MySQL
yum -y install mysql-community-server
4.4.查看MySQL版本
mysql -V
4.5.启动MySQL
sudo systemctl start mysqld
4.6.登陆MySQL后创建wordpress数据库
create database wordpress;
这里采用的YUM仓库安装,如果有不懂的地方可以看这篇文章MySQL RPM包安装
5.安装PHP
5.1.配置remi仓库
sudo rpm -ivh https://rpms.remirepo.net/enterprise/remi-release-9.rpm --nodeps
5.2.执行命令安装PHP以及相关的库
sudo dnf update -y dnf libdnf
sudo sed -i 's/PLATFORM_ID="platform:al9"/PLATFORM_ID="platform:el9"/g' /etc/os-release
sudo yum -y module install php:remi-8.0
sudo sed -i 's/PLATFORM_ID="platform:el9"/PLATFORM_ID="platform:al9"/g' /etc/os-release
5.3.安装PHP环境
yum -y install php-mysql gd php-gd gd-devel php-xml php-common php-mbstring php-ldap php-pear php-xmlrpc php-imap
5.4.查看PHP版本
php -v
6.修改Nginx配置文件以支持PHP
6.1.运行以下命令,备份Nginx配置文件
sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
6.2.打开Nginx配置文件
sudo vim /etc/nginx/nginx.conf
6.3.添加配置信息
location / {index index.php index.html index.htm;
}location ~ .php$ {root /usr/share/nginx/html; #将/usr/share/nginx/html替换为您的网站根目录,本文使用/usr/share/nginx/html作为网站根目录。fastcgi_pass 127.0.0.1:9000; #Nginx通过本机的9000端口将PHP请求转发给PHP-FPM进行处理。fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params; #Nginx调用fastcgi接口处理PHP请求。
}
6.4.启动Nginx服务
sudo systemctl start nginx
7.配置PHP
7.1.配置php测试文件
sudo vim /usr/share/nginx/html/phpinfo.php
#添加下面内容
<?php echo phpinfo(); ?>
7.2.启动php-fpm
sudo systemctl start php-fpm
8.测试访问LNMP配置信息页面
在浏览器的地址栏输入http://<ECS实例公网IP地址>/phpinfo.php进行访问
9.总结
在本实战指南中,我们详尽探讨了如何在CentOS 7系统上从头开始搭建LNMP环境,这一过程不仅加深了对Nginx、MySQL、及PHP各组件配置与协同工作的理解,还为高性能网站部署奠定了坚实基础。通过一步步实践,我们成功地配置了高效稳定的Nginx作为web服务器,设置了强大的MySQL数据库来支撑数据管理,以及部署了PHP环境,为动态网页开发铺平道路。
接下来的精彩篇章,我们将在此坚固的LNMP平台上进一步展开,聚焦于利用全球最受欢迎的内容管理系统——WordPress,来实现个人博客的快速搭建。从下载与安装WordPress源代码,到配置数据库连接,定制主题与插件的选择与安装,直至发布第一篇博客文章,每一步都将配以详细操作指导及常见问题解决策略。通过实战演练,即便是初学者也能轻松驾驭,将自己的想法和故事以个性化的博客形式展现给世界。敬请期待,让我们一同迈入个人博客搭建的新旅程!
相关文章:
“LNMP环境搭建实战指南:从零开始配置CentOS 7下的Nginx、MySQL与PHP“
目录 1.前言 2.准备工作 2.1.环境信息 2.2.关闭SELinux和firewalld 3.安装Nginx 3.1.运行以下命令,安装Nginx 3.2.运行以下命令,查看Nginx版本 4.安装MySQL 4.1.更新秘钥 4.2.配置MySQL的YUM仓库 4.3.安装MySQL 4.4.查看MySQL版本 4.5.启动…...
院内导航:如何用科技破解就医找路难题
自2019年开始“院内导航”被纳入医院智慧服务评估体系以来,到2023年改善就医服务升级的部署,每一步都见证了我国医疗卫生体系向智能化、人性化迈进的坚实步伐。 面对庞大复杂的医院环境与日益增长的就诊需求,如何让患者在茫茫人海中迅速找到就…...
C++基础篇(1)
目录 前言 1.第一个C程序 2.命名空间 2.1概念理解 2.2namespace 的价值 2.3 namespace的定义 3.命名空间的使用 4.C的输入输出 结束语 前言 本节我们将正式进入C基础的学习,话不多说,直接上货!!! 1.第一个C程…...
云视频监控中的高效视频转码策略:视频汇聚EasyCVR平台H.265自动转码H.264能力解析
随着科技的快速发展,视频监控技术已经广泛应用于各个领域,如公共安全、商业管理、教育医疗等。与此同时,视频转码技术作为视频处理的关键环节,也在不断提高视频的质量和传输效率。 一、视频监控技术的演进 视频监控技术的发展历…...
xcode配置swift使用自定义主题颜色或者使用RGB或者HEX颜色
要想在xcode中使用自定义颜色或者配置主题色,需要在Assets中配置,打开Assets文件,然后点击添加Color Set: 输入颜色的名称,然后选中这个颜色,会出现两个颜色: Any Appearance表示亮色模式下使用…...
相同含义但不同类型字段作为join条件时注意事项
假设表A和表B中都有表示学号的stu_id字段,但该字段在表A和表B中类型分别为bigint和string。当直接通过该字段进行join时,一般情况下可以得到我们预期的结果。 select a.stu_id from a as r join b as l on r.stu_id l.stu_id 但是如果学号长度较长的…...
数据结构(3.8)——栈的应用
栈在括号匹配中的应用 流程图 代码 #include <stdio.h> #include <stdlib.h> #define MaxSize 10typedef struct {char data[MaxSize];int top; } SqStack;// 初始化栈 void InitStack(SqStack* S) {S->top -1; // 初始化栈顶指针 }// 判空 bool StackEmpty(…...
前端面试题35(在iOS和Android平台上,实现WebSocket协议有哪些常见的库或框架?)
在iOS和Android平台上,实现WebSocket协议有许多成熟且被广泛使用的库和框架。下面是一些推荐的选项: iOS 平台 SocketRocket 简介:这是由Facebook开源的库,专门为iOS和Mac OS X设计,提供WebSocket连接的功能。它基于S…...
Mysql如何高效ALTER TABL
ALTER TABLE 缺点 MySQL 的ALTER TABLE 操作的性能对大表来说是个大问题。 MySQL MySQL 执行大部分修改表结构操作的方法是用新结构的 创建一个,空表从旧表中查出所有数据插入,新表然后删除旧。表这样操作可能需要花费很长,时间 如内果存不…...
vue3+vite搭建第一个cesium项目详细步骤及环境配置(附源码)
文章目录 1.创建vuevite项目2.安装 Cesium2.1 安装cesium2.2 安装vite-plugin-cesium插件(非必选)2.3 新建组件页面map.vue2.4 加载地图 3.完成效果图 1.创建vuevite项目 打开cmd窗口执行以下命令:cesium-vue-app是你的项目名称 npm create…...
LiteOS增加执行自定义源码
开发过程注意事项: 源码工程路径不能太长 源码工程路径不能有中文 一定要关闭360等杀毒软件,否则编译的打包阶段会出错 增加自定义源码的步骤: 1.创建源码目录 2. 创建源文件 新建myhello目录后,再此目录下再新建源文件myhello_demo.c 3. 编…...
《Nature》文章:ChatGPT帮助我学术写作的三种方式
图片翻译 ** 文章内容** 忏悔时间:我使用生成式人工智能(AI)。尽管在学术界关于聊天机器人是积极力量还是消极力量的争论不休,但我几乎每天都使用这些工具来完善我所写论文中的措辞,并寻求对我被要求评估的工作进行替…...
防火墙安全策略与用户认证综合实验
一、实验拓扑 二、实验需求 1.DMZ区内的服务器,办公区仅能在办公时间内<9:00-18:00>可以访问,生产区的设备全天可以访问 2.办公区不允许访问互联网,办公区和游客区允许访问互联网 3.办公区设备10.0.2.10不充许访问DMZ区的FTP服务器和HT…...
vue学习day05-watch侦听器(监视器)、Vue生命周期和生命周期的四个阶段、、工程化开发和脚手架Vue cli
13、watch侦听器(监视器) (1)作用:监视数据变化,执行一些业务逻辑或异步操作 (2)语法: 1)简写语法——简单数据类型,直接监视 ① Watch:{ 数…...
数字人+展厅互动体验方案:多元化互动方式,拓宽文化文娱新体验
数字化创新已成为推动展厅可持续发展,创造全新消费体验,满足游客多元化需求的关键力量。 “数字人数字互动展厅”可以适应年轻一代的文化传播与多媒体互动新体验趋势,打造新生代潮玩聚集地,促进文化创意传播与互动体验场景创新&a…...
在Spring Boot项目中集成监控与报警
在Spring Boot项目中集成监控与报警 大家好,我是微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 1. 引言 在当今的软件开发中,监控和报警系统是保证系统稳定性和可靠性的重要组成部分。Spring Boot…...
opencv实现目标检测功能----20240704
早在 2017 年 8 月,OpenCV 3.3 正式发布,带来了高度改进的“深度神经网络”(dnn)模块。 该模块支持多种深度学习框架,包括 Caffe、TensorFlow 和 Torch/PyTorch。这次我们使用Opencv深度学习的功能实现目标检测的功能,模型选用MobileNetSSD_deploy.caffemodel。 模型加载…...
音视频解封装demo:使用libmp4v2解封装(demux)出mp4文件中的h264视频数据和aac语音数据
1、README 前言 本demo是使用的mp4v2来将mp4文件解封装得到h264、aac的,目前demo提供的.a静态库文件是在x86_64架构的Ubuntu16.04编译得到的,如果想在其他环境下测试demo,可以自行编译mp4v2并替换相应的库文件(libmp4v2.a&#…...
手撸俄罗斯方块(一)——简单介绍
手撸俄罗斯方块 简单介绍 《俄罗斯方块》(俄语:Тетрис,英语:Tetris),是1980年末期至1990年代初期风靡全世界的电脑游戏,是落下型益智游戏的始祖,电子游戏领域的代表作之一&a…...
构建LangChain应用程序的示例代码:61、如何使用 LangChain 和 LangSmith 优化链
本示例介绍如何使用 LangChain 和 LangSmith 优化链。 设置 我们将为 LangSmith 设置环境变量,并加载相关数据 import osos.environ["LANGCHAIN_PROJECT"] "movie-qa" # 设置 LANGCHAIN_PROJECT 环境变量为 "movie-qa"import pan…...
Android系统通过属性设置来控制log输出的方案
Android系统通过属性设置来控制log输出的方案 背景 项目中经常需要在针对性的模块或者文件,分析问题的时候输出Log,但问题分析完成后,又由于性能问题,需要关闭这些log输出。当前大多数情况下是控制整个系统的log等级来实现&#…...
JavaDoc的最佳实践
文章目录 一、JavaDoc 使用说明1.1 什么是 JavaDoc1.2 文档注释结构1.3 常见的 Javadoc 标签 二、文档最佳实践2.1 注释原则2.2 实际案例 参考资料 一、JavaDoc 使用说明 1.1 什么是 JavaDoc JavaDoc 是一款能根据源代码中的文档注释来产生 HTML 格式的 API 文档的工具。 Jav…...
数字力量助西部职教全面提升——唯众品牌大数据、人工智能系列产品中标甘肃庆阳职院数字经济人才培养基地!
近日,唯众品牌凭借在大数据和人工智能领域深耕多年的技术积累和卓越产品,成功中标庆阳职业技术学院全国一体化算力网络国家枢纽节点数字经济人才培养基地项目,标志着唯众在助力西部职业教育与数字经济融合发展的新征程上迈出了坚实的一步。 …...
Swagger的原理及应用详解(四)
本系列文章简介: 在当今快速发展的软件开发领域,特别是随着微服务架构和前后端分离开发模式的普及,API(Application Programming Interface,应用程序编程接口)的设计与管理变得愈发重要。一个清晰、准确且易于理解的API文档不仅能够提升开发效率,还能促进前后端开发者之…...
Elasticsearch7.10集群搭建
Elasticsearch详细介绍: Elasticsearch 是一个分布式、RESTful 风格的搜索和分析引擎。它的核心基于 Apache Lucene,能够处理海量的数据,并支持实时的全文搜索。以下是关于 Elasticsearch 的详细介绍。 一、基本概念 索引(Index…...
SMU Summer 2024 Contest Round 3
A.Hcode OnlineJudge 先用欧拉筛把质数预处理出来,然后枚举左端点的质数,只需要询问右端点是不是质数并取差值的min就行了 #include<bits/stdc.h> #define endl \n #define mk make_pair #define int long long using namespace std; typedef lon…...
uniapp 封装瀑布流组件
思路: 1.coulumns:需要分成几列 2.如何分布数据 3.计算每列的宽度 4.图片进行高度自适应 <template><view :style"{ margin: boxM }"><view class"flex flex-justify-start bg-red" style"background-colo…...
pd虚拟机去虚拟化是什么意思?pd虚拟机去虚拟化教程 PD虚拟机优化设置
Parallels Desktop for Mac(PD虚拟机)去虚拟化是指在虚拟机(Virtual Machine,简称 VM)中禁用或减少虚拟化层的影响,使其表现更接近于物理机。这种操作通常用于提高虚拟机的性能或解决某些软件兼容性问题。具…...
低代码研发项目管理流程优化:提效与创新的双重驱动
随着信息技术的迅猛发展,软件项目的规模和复杂度日益增加,传统的软件开发方式已经难以满足快速迭代和高效交付的需求。在这一背景下,低代码平台应运而生,以其高效、灵活、易用的特点,迅速成为软件行业的新宠。然而&…...
32位版 C 库函数time 将在 2038 年溢出,那到时候,它该何去何从
简单地说,通常不必担心,在64位操作系统已经成为主流的今天这基本上不是问题(在写这篇回答的时候,我才发现我甚至找不到32位的机器来测试)刚好我有一些资料,是我根据网友给的问题精心整理了一份「32库函数的…...
wordpress 主题分享/app推广
一、硬件材料 1*Arduino UNO开发板 1*GSP30 1*0.96寸OLED液晶显示屏 二、硬件接线图 CSDN 赤鱼科技...
石家庄商城网站制作/seo自学教程推荐
本问题已经有最佳答案,请猛点这里访问。我正在尝试加载正在使用的应用程序的条款和条件。 客户端向我提供了条款和条件的html文件,我没有任何类型的服务器访问权限。 因此从技术上讲,该应用需要随身携带该文件。 我已经完成了Web视图…...
上海青浦房地产网站建设/谷歌seo新规则
介绍traits的文章很多,但感觉大部分文章的说明都很晦涩难懂,把一个并不很复杂的C模板的应用描述的过于复杂。忍不住想把自己的理解跟大家分享一下,或许我也只是掌握了一点traits的皮毛而已,但也希望这些皮毛能略微抓住你的眼球&am…...
别人能打开的网站我打不开/企业网站建设的步骤
EDA365欢迎您登录!您需要 登录 才可以下载或查看,没有帐号?注册x3 K1 ~ W3 V6 w6 h w) B1 I. C$ X在概率论和信息论中,两个随机变量的互信息(Mutual Information,简称MI)或转移信息(transinformation)是变量间相互依赖…...
寻找网站建设 网站外包/嘉兴网站建设
第一种方法: 1、详细查询命令: 查看cpu最大进程,或者内存最大进程。 #CPU ps aux|head -1;ps aux|grep -v PID|sort -rn -k 3|head #内存 ps aux|head -1;ps aux|grep -v PID|sort -rn -k 4|head显示如下: ubuntuubuntu:~$ ps…...
漯河小学网站建设/湖南靠谱的关键词优化
目录 概述测试环境 安装过程配置启动客户端介绍多级DC的ldif文件的配置 [一]、概述 什么叫LDAP呢,概念的东西这里就不多讲了,网上搜索下有很多,本文的重点是介绍如何在windows平台上安装和配置openLDAP软件。 openLDAP官方网站࿱…...