小白带你部署LNMP分布式部署

news2024/11/25 20:53:14

目录

前言

一、概述

二、LNMP环境部署

三、配置nginx

1、yum安装

2、编译安装

四、安装

1、编译安装nginx

2、网络源

3、稍作优化

4、修改配置文件vim /usr/local/nginx/conf/nginx.conf

5、书写测试页面

 五、部署应用


前言

LNMP平台指的是将Linux、Nginx、MySQL和PHP(或者其他的编程语言,如Python、Perl等)集成在一起的一种Web服务器环境。它是一种常用的开发和部署网站的解决方案,适用于构建各种类型的网站和应用程序。

下面简要介绍每个组件的作用和功能:
1. Linux:作为操作系统,提供稳定的基础环境,支持并发处理和高性能。
2. Nginx:作为Web服务器和反向代理服务器,处理客户端请求并将它们转发给后端应用服务器,具有高性能和可扩展性。
3. MySQL:作为关系型数据库管理系统,用于存储和管理网站的数据,提供高效的数据读写和查询功能。
4. PHP:作为一种常用的编程语言,用于开发网站的后端逻辑和业务处理,与Nginx和MySQL进行沟通。

LNMP平台的优点包括:
1. 性能优异:Nginx作为Web服务器具有高性能和高并发处理能力,可以处理大量的请求。
2. 稳定可靠:Linux作为操作系统对稳定性有保证,并且MySQL作为数据库管理系统也很稳定,保证了网站的可靠性。
3. 可扩展性:LNMP平台支持横向扩展,可以通过增加服务器节点和负载均衡来提高系统的性能和可用性。
4. 社区支持:LNMP平台的每个组件都有庞大的开发者社区,提供了大量的文档、插件和技术支持。

需要注意的是,LNMP平台并不是唯一的选择,还有其他类似的解决方案,如LAMP(Linux、Apache、MySQL和PHP)、LEMP(Linux、Nginx、MySQL和PHP)、WAMP(Windows、Apache、MySQL和PHP)等。选择合适的平台取决于具体的需求和场景。

一、概述


LNMP代表 Linux、Nginx、MySQL、PHP,是一种常用的服务器架构。它由以下组件组成:

        Linux:作为操作系统,提供服务器的基本功能和稳定性。

        Nginx:作为Web服务器,处理和响应客户端的HTTP请求,并将请求分发给后端的PHP处理程序。

        MySQL:作为关系型数据库管理系统,用于存储和管理网站的数据。

        PHP:作为服务器端脚本语言,用于处理和生成动态内容。

LNMP架构在Web开发中广泛使用,因为它结合了优秀的开源软件,具有高性能、高稳定性和高灵活性的特点。

二、LNMP环境部署


        需要三台主机  ,分别部署nginx、mysql、php 以实现多台主机的LNMP分布式部署

       关闭防火墙  ,设置selinux宽容模式,配置静态ip

          nginx        ip        192.168.28.3

        mysql        ip        192.168.28.4

        php            ip        192.168.28.5

三、配置nginx


        可采用两种安装方式网络源安装(需下载或配置epel源)和编译安装

        主要演示编译安装nginx的部署

        1、yum安装

        yum install -y epel-release   (下载epel源)

        yum install -y nginx

        2、编译安装

        下载nginx源码包  //nginx.org/en/download.html(下载需要下载的nginx版本)


四、安装

1、编译安装nginx

先配置网络源

2、网络源

wget https://nginx.org/download/nginx-1.20.2.tar.gz
 

 解压安装包

 

 安装完依赖包,开始编译

OK,开始安装make && make install 

make && make install

 3、稍作优化

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

4、修改配置文件vim /usr/local/nginx/conf/nginx.conf

 第二处 #此处是针对php环境的修改:IP写成php环境主机的IP、目录修改成如下用于测试、后缀

  5、书写测试页面

 vim /usr/local/nginx/html/index.html

 

 修改文件名

 mv /usr/local/nginx/html/index.html /usr/local/nginx/html/index.php

启动nginx并监听端口  

做nginx的命令优化,启动并测试 nginx

 

第二步安装php

##更新源
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
##安装
yum install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml php72w-ldap php72w-mcrypt

 编辑 php的配置文件/etc/php-fpm.d/www.conf

 vim /etc/php-fpm.d/www.conf 

修改成自己的地址 

修改成NGINX服务器的IP

 创建目录

 mkdir -p /usr/local/nginx/html
 vim /usr/local/nginx/html/index.php

 启动并检查端口

 

 登录mysql

 创建用户库

 create database class;
 grant all on calss.* to 'liujt'@'192.168.28.%' identified by '123.com';
 flush privileges;

远程登录一下

 

 五、部署应用

仅供参考:

Disucz! 下载_免费搭建网站_开源建站系统下载_Discuz!官方_为您提供全方位建站服务!

选择对应的Disucz版本,同时兼顾它对php版本的要求

将下载好的Disucz分别部署在NGINX和php两台主机中

 

 nginx的属主修改成nginx

 

 部署php

 开始安装

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/872971.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring Boot + Vue3前后端分离实战wiki知识库系统<十二>--用户管理单点登录开发一

目标: 在上一次Spring Boot Vue3前后端分离实战wiki知识库系统<十一>--文档管理功能开发三我们已经完成了文档管理的功能模块开发,接下来则开启新模块的学习---用户登录,这块还是有不少知识点值得学习的,…

谈谈语音助手

目录 1.什么是语音助手 2.语音助手的发展过程 3.现在有哪些成熟的语音助手 4.语音助手对人类发展的影响 1.什么是语音助手 语音助手是一种能够通过语音交互与用户进行沟通和执行任务的虚拟助手。它基于人工智能和自然语言处理技术,能够理解用户的语音指令&#x…

LeetCode 36题:有效的数独

题目 请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图&#xff…

MEC | 条款4 非必要不提供 default constructor

条款4 非必要不提供 default constructor 文章目录 条款4 非必要不提供 default constructorclasses 必须有默认构造函数?Example1. 产生数组解决方法 2.不适用于 template-based container clases3.虚基函数 探讨>>>>> 欢迎关注公众号【三戒纪元】 …

CANoe自动化工程的搭建

基于XMLCAPL建立自动化工程 1、导入ini文件2、新建 Test Environment3、报告类型4、代码编写 1、导入ini文件 工程的配置的文件,配置DUT相关信息,具体视工程而编写内容。 2、新建 Test Environment 1、新建XML测试用例环境 2、导入XML测试用例文件 …

vulnhub靶机Deathnote

难度:easy 下载地址:https://download.vulnhub.com/deathnote/Deathnote.ova 主机发现 arp-scan -l 端口扫描 nmap --min-rate 10000 -p- 192.168.21.140 进一步查看目标的端口的服务和版本 nmap -sV -sT -O -p22,80 192.168.21.140 扫描端口的漏洞…

微服务实战项目-学成在线-项目优化(redis缓存优化)

微服务实战项目-学成在线-项目优化(redis缓存优化) 1 优化需求 视频播放页面用户未登录也可以访问,当用户观看试学课程时需要请求服务端查询数据,接口如下: 1、根据课程id查询课程信息。 2、根据文件id查询视频信息。 这些接口在用户未认…

Java面试——一分钟搞懂限流算法

为什么限流 运营网站,经常会遇到各种挑战:某黑客发起DoS攻击、网络爬虫网页抓取、商品秒杀活动、双十一与618等场景,会使流量突然激增,如果不限制流量的访问就会使系统宕机。 常见的限流算法 1.漏桶算法( LEAKY BUC…

Eclipse-配置彩色输出打印

文章目录 前言配置下载查看是否安装 前言 这是一篇古老的文章,那个时候还在用Eclipse ,现在已经换 IDEA 了… 这是一篇 2018 年的文章,我只是将文章从个人比较挪到了CSDN 中 配置 配置完然后下载下面插件即可生成彩色代码。 下载 ANSI …

Vue2-收集表单数据、过滤器、内置指令与自定义指令、Vue生命周期

🥔:我徒越万重山 千帆过 万木自逢春 更多Vue知识请点击——Vue.js VUE2-Day4 收集表单数据1、不同标签的value属性2、v-model的三个修饰符 过滤器内置指令与自定义指令1、内置指令2、自定义指令定义语法(1)函数式(2&am…

VMware vCenter 6.5 断电后无法启动修复方案

目录 第1章 前言 第2章 问题现象 第3章 解决方案 第4章、Tips 第1章 前言 本文主要介绍VMware vcsa 6.5由于电源异常/存储异常之后无法启动,进入磁盘自检模式处理方法。(最近遇到类似情况比较多,Citrix Xenserver也遇到了,后来…

rocketMq启动broker报错找不到或无法加载主类 Files\Java\jdk1.8.0_171\lib\dt.jar;C:\Program]

假如弹出提示框提示‘错误: 找不到或无法加载主类 xxxxxx’。 1.打开runbroker.cmd 将"%CLASSPATH%"加上英文双引号,切勿别加中文双引号 2.打开runserver.cmd 同理 将"%CLASSPATH%"加上英文双引号,切勿别加中文双引号 3.正常执行即…

【Linux】邮件服务器搭建 postfix+dovecot+mysql (终极版 超详细 亲测多遍无问题)

🍁博主简介 🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊交流社区:运维交流社区 欢迎大家的加入! 文章目录 前言基础原理准备工作一 、安装关于权…

一.RocketMQ概念

RocketMQ概念 1.概念2.应用场景3.MQ的优点和缺点4.常见MQ对比 1.概念 MQ(Message Queue),是一种提供消息队列服务的中间件,也称为消息中间件,是一套提供了消息生产、存储、消费全过程API的软件系统。 RocketMQ是阿里巴巴2016年MQ中间件&…

C++QT教程3——手册4.11.1自带教程(笔记)——创建一个QT快速应用

文章目录 创建一个QT快速应用创建项目创建主视图添加应用逻辑为视图添加动画素材文件 参考文章 创建一个QT快速应用 本教程使用内置的QML类型,介绍了Qt Quick的基本概念。有关可以选择的用户界面选项的更多信息,请参阅用户界面。 本教程描述了如何使用…

约束综合中的逻辑互斥时钟(Logically Exclusive Clocks)

注:本文翻译自Constraining Logically Exclusive Clocks in Synthesis 逻辑互斥时钟的定义 逻辑互斥时钟是指设计中活跃(activate)但不彼此影响的时钟。常见的情况是,两个时钟作为一个多路选择器的输入,并根据sel信号…

【人工智能前沿弄潮】——生成式AI系列:Diffusers应用 (2) 训练扩散模型(无条件图像生成)

无条件图像生成是扩散模型的一种流行应用,它生成的图像看起来像用于训练的数据集中的图像。与文本或图像到图像模型不同,无条件图像生成不依赖于任何文本或图像。它只生成与其训练数据分布相似的图像。通常,通过在特定数据集上微调预训练模型…

Idea报错:Cannot resolve symbol “springframework“以及各种依赖包

问题描述: Idea导入了maven项目之后出现报错Cannot resolve symbol “springframework” ,识别不了这个标识或者找不到这个包,明明这些依赖和包都有就是出现报错,并且运行按钮变成灰色 解决办法: 其实这个原因大概率就…

React构建的JS优化思路

背景 之前个人博客搭建时,发现页面加载要5s才能完成并显示 问题 React生成的JS有1.4M,对于个人博客服务器的带宽来说,压力较大,因此耗费了5S的时间 优化思路 解决React生成的JS大小,因为我用的是react-router-dom…

从源码Debug深入spring事件机制,基于观察者模式仿写spring事件监听骨架

文章目录 1.测试案例2.DEBUG源码分析3. 异步监听4.ApplicationListener子接口5. 注解支持6. 基于观察者模式高仿spring事件监听6.1 先定义自定义一个事件6.2 定义两个监听器6.3 定义一个持有所有监听器的对象,类似spring的SimpleApplicationEventMulticaster6.4 事件…