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

LNMP的简单安装(ubuntu)

LNMP介绍

LNMP 是一种常见的开源软件组合,用于搭建高效的网站服务器环境。LNMP 代表以下四个组件:

Linux:操作系统。Linux 是一种稳定、可靠、安全的开源操作系统,常用于服务器环境,特别是在企业级部署中。它负责底层资源的管理和调度。Nginx:Web 服务器。Nginx 是一种高性能的 HTTP 和反向代理服务器,它能够处理大量并发连接,因此适合高流量的网站。相较于 Apache,Nginx 更轻量且效率更高。MySQL:数据库管理系统。MySQL 是一种广泛使用的关系型数据库管理系统,它通过结构化查询语言(SQL)来管理和查询数据。MySQL 可以有效处理大规模的数据存储和管理。PHP:服务器端脚本语言。PHP 是一种动态网页开发的服务器端编程语言,通常用来生成动态内容或与数据库交互。它在 Web 开发中广泛应用,尤其是与 MySQL 结合使用。

安装

LNMP安装教程 — 阿里云

#1. 从ppa软件仓库里面拉取nginx最新版本的软件包
sudo add-apt-repository ppa:nginx/stable  
#2. 更新列表
sudo apt-get update
#3. 安装nginx
sudo apt-get install nginx
#4. 查看nginx版本,确定安装成功
nginx -v
#5. 修改nginx以支持php
sudo vim /etc/nginx/sites-enabled/default
#6. 修改配置
## 1. 在server{}里面增加index.php
## 2. 取消注释loacion~ \.php${} 的括号  以及 include...
![修改ngxin配置以支持php-1](https://i-blog.csdnimg.cn/direct/cc8dac5d2fd94a2ca9106528c96c6efc.png)
![修改ngxin配置以支持php-2](https://i-blog.csdnimg.cn/direct/cbc788bc26f247c388f2bee2a022641e.png)#7. 重启nginx
sudo systemctl restart nginx.service# mysql
#1. 安装mysql
sudo apt -y install mysql-server
#2. 验证mysql安装成功
mysql -V
#3. 配置mysql:
sudo mysql
#4. 设置用户名密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'Mysql@1234';
#5. 退出
exit;
#6. 安全性配置
sudo mysql_secure_installation
#7. 然后根据提示填入相应的信息 
这里输入  :  Mysql@1234(当前root密码)   Y(改变root用户密码?如果选N,就跳到删除匿名用户 步骤)    2(选择密码策略)    Y(修改当前密码,也可以不修改)   Mysql123@(设置新root密码,填自己的)     Y(确定密码)   N(删除匿名用户?)   N(禁止root用户远程登录)       Y(移除test数据库)     Y(重新加载授权表)
#8. 登录mysql
sudo mysql -uroot -p  
#9. 输入密码
Mysql123@# PHP:
#1. 安装PHP
sudo apt -y install php-fpm
#2. 查看php版本
php -v
#3. 配置php
sudo vim <网站根目录>/phpinfo.php
# sudo vim /var/www/html/phpinfo.php
# ---- <网站根目录>为变量,可通过Nginx配置文件查看。本教程中Nginx配置文件为默认文件/etc/nginx/sites-enabled/default,您可以运行cat /etc/nginx/sites-enabled/default命令查看文件内容,其中如下图所示的/var/www/html部分即为网站根目录。
# ---- ![网站根目录](https://i-blog.csdnimg.cn/direct/26084cc7d643499da0c368bca5c0c12c.png)
# ---- 因此,对应的运行命令为 sudo vim /var/www/html/phpinfo.php
# 4. 添加以下配置信息。
<?php echo phpinfo(); ?>
# ---- ![配置信息](https://i-blog.csdnimg.cn/direct/7ece4a909baa439eb9edd866d27c730c.png)
# 5. 运行以下命令,启动PHP,并且重启nginx
sudo systemctl start php7.4-fpm
sudo systemctl restart nginx.service
# ---- 注意这里的php7.4-fpm 要根据php -v 看到的php版本去填,如果php版本是8.1,就填php8.1-fpm
# ---- ![启动php](https://i-blog.csdnimg.cn/direct/2d6dc1361a78430abcda1a485b1faff0.png)
#6. 浏览器输入ip/phpinfo.php查看是否部署成功
127.0.0.1/phpinfo.php 
# ---- 这里我演示的是本地的情况,如果远程服务器就输入公网ip
# ---- ![php配置成功情况](https://i-blog.csdnimg.cn/direct/5583793020d84991b0696094b8ef1c7b.png)# 到以上,就意味着LNMP环境搭建成功了,但是建议进行后续步骤# 后续步骤
#1. 删除/phpinfo.php测试文件,消除数据泄露风险  sudo rm -rf <网站根目录>/phpinfo.php
sudo rm -rf /var/www/html/phpinfo.php
# ---- 一般是根目录是/var/www/html,如果你的不是,对应改一下

修改ngxin配置以支持php-1
修改ngxin配置以支持php-2

碰到的一些问题

腾讯云 ubuntu 系统改为 root 登陆
腾讯云–说明文档
快速打开root远程登录

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 08 Shell Script条件判断
  • Vue3 Day1Day2-Vue3优势ref、reactive函数
  • vue 给循环列表的选中项加样式
  • 《仙境传说RO:新启航》游戏攻略,VMOS云手机辅助高效挂机助攻!
  • 【Elasticsearch系列十二】聚合-电视案例
  • 大数据新视界 --大数据大厂之探索ES:大数据时代的高效搜索引擎实战攻略
  • 【计算机网络】UDP 协议详解及其网络编程应用
  • Sqlmap中文使用手册 - File system access模块参数使用
  • 比特币10年价格数据(2014-2024)分析(进阶2_时间序列分析)
  • Docker 镜像制作(Dockerfile)
  • C++之第十二课
  • 华为OD机试 - 二维伞的雨滴效应(Python/JS/C/C++ 2024 E卷 200分)
  • 【新手上路】衡石分析平台使用手册-租户管理
  • 硬件看门狗导致MCU启动时间慢
  • Flask-JWT-Extended登录验证
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • JavaWeb(学习笔记二)
  • js中forEach回调同异步问题
  • Linux编程学习笔记 | Linux多线程学习[2] - 线程的同步
  • mac修复ab及siege安装
  • 笨办法学C 练习34:动态数组
  • 第三十一到第三十三天:我是精明的小卖家(一)
  • 翻译:Hystrix - How To Use
  • 诡异!React stopPropagation失灵
  • 聊聊redis的数据结构的应用
  • 如何正确配置 Ubuntu 14.04 服务器?
  • 使用parted解决大于2T的磁盘分区
  • 我是如何设计 Upload 上传组件的
  • 项目实战-Api的解决方案
  • 在Docker Swarm上部署Apache Storm:第1部分
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • 测评:对于写作的人来说,Markdown是你最好的朋友 ...
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • # windows 安装 mysql 显示 no packages found 解决方法
  • #define 用法
  • #HarmonyOS:基础语法
  • $.ajax,axios,fetch三种ajax请求的区别
  • (4)事件处理——(6)给.ready()回调函数传递一个参数(Passing an argument to the .ready() callback)...
  • (55)MOS管专题--->(10)MOS管的封装
  • (7)svelte 教程: Props(属性)
  • (SpringBoot)第二章:Spring创建和使用
  • (八)Flink Join 连接
  • (代码示例)使用setTimeout来延迟加载JS脚本文件
  • (读书笔记)Javascript高级程序设计---ECMAScript基础
  • (附源码)spring boot校园健康监测管理系统 毕业设计 151047
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (回溯) LeetCode 46. 全排列
  • (接上一篇)前端弄一个变量实现点击次数在前端页面实时更新
  • (已解决)vue+element-ui实现个人中心,仿照原神
  • (转)socket Aio demo
  • ****三次握手和四次挥手
  • *Django中的Ajax 纯js的书写样式1
  • .Net Core中的内存缓存实现——Redis及MemoryCache(2个可选)方案的实现
  • .net mvc部分视图
  • .net php 通信,flash与asp/php/asp.net通信的方法