当前位置: 首页 > news >正文

【Day 31】Linux-LNMP

一、介绍

LNMP 是一套流行的 Web 服务器架构组合,由四个开源软件的首字母组成,分别是 LinuxNginxMySQL/MariaDB 和 PHP/Perl/Python

LNMP 各组件的作用

  1. Linux
    基础操作系统,提供底层硬件管理、进程调度、文件系统等核心功能。常用发行版包括 CentOS、Ubuntu、Debian 等,是整个架构的运行基础。

  2. Nginx
    高性能的 HTTP 服务器和反向代理服务器:

    • 负责接收客户端(浏览器)的 HTTP 请求,处理静态资源(HTML、CSS、JS、图片等)。
    • 通过反向代理将动态请求(如 PHP 脚本)转发给 PHP 处理。
  3. MySQL/MariaDB
    关系型数据库管理系统:

    • 存储网站的结构化数据(如用户信息、文章内容、订单数据等)。
    • MariaDB 是 MySQL 的分支,兼容 MySQL 语法,常作为替代方案。
  4. PHP/Perl/Python
    服务器端脚本语言(以 PHP 最常用):

    • 处理动态业务逻辑(如用户登录验证、数据查询与处理)。
    • 与数据库交互,生成动态 HTML 内容,再通过 Nginx 返回给客户端。
  5. LNMP 工作流程(以访问 PHP 动态页面为例)

    • 客户端(浏览器)向服务器发送 HTTP 请求。

    • Nginx 接收请求,识别到 .php 动态文件,通过 FastCGI 协议将请求转发给 PHP 进程
    • PHP 解析脚本,如需操作数据,会连接 MySQL 数据库进行查询 / 写入。
    • MySQL 处理 PHP 的数据请求,返回结果给 PHP。
    • PHP 生成动态 HTML 内容,返回给 Nginx。
    • Nginx 将最终内容发送给客户端,完成一次请求。

二、实践

(一)以WordPress为例

        WordPress

        一款开源免费的内容管理系统(CMS),主要用于快速搭建网站(如博客、企业官网、电商平台等)。

  1. 操作简单,不用懂代码也能通过后台管理网站内容;

  2. 扩展性强,可以通过更换主题改变外观,安装插件添加功能(如表单、支付、SEO 优化等);支持自己买服务器和域名搭建,也有托管版可选,适合各类用户快速建站。


1、安装、启动nginx

2、安装、启动mysql

3、安装php74

php版本

①搜索Download – WordPress.org

//若6.8.2建议使用 PHP 8.3 或更高版本以及 MySQL 版本 8.0 或 MariaDB 版本 10.6 或更高版本。

//若6.6.2建议使用 PHP 7.4 或更高版本以及 MySQL 版本 8.0 或 MariaDB 版本 10.6 或更高版本。

把旧的卸载,下新的

②下php

方法1:

Webtatic Yum Repository – Webtatic.com

方法2:若有压缩包

  • # yum install php php-cli php-fpm php-common php-devel php-gd php-mbstring php-mysqlnd php-pdo php-xml     //安装 

4、布置nginx网站

①先测试

<h1> Slyvia </h1>
<h2> Su </h2><?phpphpinfo();echo "<h1>Hello PHP, World!</h1>";
?><?php
$dsn = 'mysql:host=IP地址;dbname=库名;unix_socket=socket文件路径';
$username = 'mysql用户名';
$password = '密码';try {$pdo = new PDO($dsn, $username, $password);// 设置错误模式为异常$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);echo "连接成功";
} catch (PDOException $e) {echo "连接失败: " . $e->getMessage();
}
?>location / {root /xxxxxx;index index.php index.html;}location ~ \.php$ {root           /web/xxxxx;fastcgi_pass   127.0.0.1:9000;fastcgi_index  index.php;fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;include        fastcgi_params;}

 

DNS

② 部署

复制

粘贴

允许安装程序

http://www.dtcms.com/a/340280.html

相关文章:

  • MySQL基础操作
  • SpringBoot + MyBatis-Plus 使用 listObjs 报 ClassCastException 的原因与解决办法
  • Rabbit 实战指南-学习笔记
  • HTML+CSS:浮动详解
  • 3D文档控件Aspose.3D实用教程:使用 C# 构建 OBJ 到 U3D 转换器
  • awk 基础用法示例
  • 测试DuckDB插件对不同格式xlsx文件的读写效率
  • MyCAT分库分表
  • Go特有的安全漏洞及渗透测试利用方法(通俗易懂)
  • 次短路P2865 [USACO06NOV] Roadblocks G题解
  • SLAM文献之-Globally Consistent and Tightly Coupled 3D LiDAR Inertial Mapping
  • RESP协议
  • React响应式链路
  • SCAU学习笔记 - 自科三面前端方向实战演示
  • 157-基于Python的懂车帝汽车数据爬虫分析与可视化系统
  • NVIDIA Isaac Sim
  • Ubuntu 主机名:精通配置与管理
  • 全球首款 8K 全景无人机影翎 A1 发布解读:航拍进入“先飞行后取景”时代
  • 从 “模仿” 到 “创造”:AI 大模型的 “思维进化” 背后,技术突破在哪?
  • 沪深股指期货指数「IF000」期货行情怎么看?
  • 利用无事务方式插入数据库解决并发插入问题(最小主键id思路)
  • 海外短剧app、h5、独立站、国内短剧看广告app,短剧小程序、源码交付开发
  • java17学习笔记
  • RK android14 Setting一级菜单IR遥控器无法聚焦问题解决方法
  • VPS海外节点性能监控全攻略:从基础配置到高级优化
  • 02-docker相关知识
  • Java 学习笔记(基础篇6)
  • 29.Linux rsync+inotify解决同步数据实时性
  • 【Tech Arch】Apache HBase分布式 NoSQL 数据库
  • 签名应用APP分发平台的微服务化部署是什么?其有哪些优势?