当前位置: 首页 > 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.xdnf.cn/news/1333459.html

相关文章:

  • 0基础安卓逆向原理与实践:第3章:逆向工程理论基础
  • 8 webUI中-Controlnet(控制与约束)的应用分类与使用方法
  • C++高频知识点(三十一)
  • 【ElasticSearch】ElasticSearch Overview
  • k8sday12数据存储(1/2)
  • AI 效应: GPT-6,“用户真正想要的是记忆”
  • 凸问题-非凸问题-非凸模型
  • JavaScript 性能优化实战(易懂版)
  • 【电气工程学习】
  • (nice!!!)(LeetCode 每日一题) 1277. 统计全为 1 的正方形子矩阵 (动态规划)
  • Qt5.9.9 + Windows API 开发系统监控工具 - 教学级项目实战
  • 项目各功能介绍
  • linux下MySQL安装与卸载
  • Tomcat 性能优化终极指南
  • 餐饮灶头:后厨效率与菜品稳定的核心载体
  • Linux《进程间通信(下)》
  • 海量数据测试指南与实战
  • 【PostgreSQL内核学习:WindowAgg 节点对 Tuplestore 的复用机制】
  • 超大型公共场所的智慧守护者——人脸动态识别与管理系统
  • Temu美国站大规模扫号封店:虚假本土店遭批量封禁,如何规避?
  • 心路历程-了解网络相关知识
  • 【C2000常见问题】当板子处于强电噪声环境下,或带重载时C2000芯片的PWM发波会出现异常,导致炸管。
  • Vue2封装Axios
  • 8.20网络编程——sqlite3数据库
  • LeetCode 刷题【47. 全排列 II】
  • 【Linux系统】匿名管道以及进程池的简单实现
  • 在 React 中,​父子组件之间的通信(传参和传方法)
  • 大语言模型研究进展
  • Elasticsearch 写入全链路:从单机到集群
  • sfc_os!SfcValidateCatalogs函数分析之syssetup.inf中的[ProductCatalogsToInstall]