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

LAMP环境搭建记录:基于VM的Ubuntu虚拟机

LAMP环境搭建记录:基于VM的Ubuntu虚拟机

我们从这样的角度出发:

一、简述LAMP环境

二、搭建LAMP环境

一、什么是LAMP环境

首先,该词是复合:

​ LAMP = Linux + Apache + MySQL + PHP

其中,逐项简述为:

​ Linux:操作系统为Linux的发行版,我的是Ubuntu

​ Apache:是一种常见的Web服务器软件,广泛用于Linux和其他UNIX操作系统上

​ MySQL:数据库管理系统,网站后台使用的数据库时MySQL数据库

​ PHP:脚本语言,网站使用PHP开发

展示,工作原理图:

LAMP配置与应用_lamp的工作流程-CSDN博客

  • 用户通过统一资源定位符(即网址)向服务器发出请求

  • 使用http协议以及dns域名解析所得到ip地址,向所对应的web服务器发出请求。

  • web服务器只能回应html格式,无法得出更“绚丽”的结果(Apache)

  • 需要脚本语言解析器进行解析,返回“动态”想要的结果(PHP),再返回给Apache

  • 做到动态网页,加快响应,随取随用,需数据库服务器存储数据(MySQL),返回给PHP

二、搭建LAMP环境

  1. 首先,确保已经在VM里面装好了Ubuntu虚拟机
  2. 然后,更新系统工具,在终端中打开:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
  1. 现在,开始安装LAMP环境:
## 安装Apache(httpd服务)
sudo apt-get install apache2
## 启动Apache,并设置开机自启动
sudo systemctl start apache2 
sudo systemctl enable apache2
## 结束后,在Ubuntu里面的浏览器输入自己的IP,显示默认的apache界面就是成功了
## 如果不知道自己的ip,可以输入以下代码查询,网络服务器可以使用域名。
ip addr 
## 配置防火墙,因为apache是一个服务器程序,他可以对外发布你的网站程序,所以这需要你允许防火墙的端口,网站默认端口是80。
sudo apt-get install ufw -y
sudo ufw allow in "Apache"
sudo ufw allow 80

484fc5256cc34026fd8ac13909322b05.png

## 安装MySQL(数据库服务)
sudo apt-get install mysql-server -y
## 验证是否安装完成,成功会显示版本号啥的
mysql --version
## mysql开机自启动,进入数据库前一定要打开mysql服务
sudo systemctl start mysql
## 配置数据库,打开成功界面如下:
sudo mysql

在这里插入图片描述

## 创建用户,root权限太高,使用时容易出问题。
## 语法:create user "用户名"@"主机名" identified by "密码";(标点符号也是一部分)
## 本地开发主机名=localhost,也可以用云服务器的ip地址,成功了
create user "cancerai"@"localhost" identified by "admin";

## 设置用户权限:grant all privileges on *.* to "用户名"@"主机地址";
grant all privileges on *.* to "cancerai名"@"localhost";

## 刷新状态,权限生效
flush privileges;

## 验证账号:
#退出当前root账户的数据库(也可以按快捷键 ctrl+d)
exit
#进入自己创建的账户的数据库
mysql -u用户名 -p密码
#示例
mysql -ucancerai -padmin

在这里插入图片描述

在这里插入图片描述

## 安装PHP
sudo apt-get install php libapache2-mod-php -y
sudo systemctl restart apache2    #重启apache服务
## 验证PHP的装载
sudo nano /var/www/html/info.php
## 在打开的文件里面输入以下代码,再在浏览器里面输入127.0.0.1/info.php
<?php
phpinfo();
?>
## 出现下面的界面就是成功

fb89ed9f323571b340c1497ac319be68.png


http://www.kler.cn/news/316822.html

相关文章:

  • 编译成功!QT/6.7.2/Creator编译Windows64 MySQL驱动(MSVC版)
  • (学习记录)使用 STM32CubeMX——GPIO引脚输入配置
  • 实时数据的处理一致性
  • JavaScript(JS)学习笔记 3(DOM简介 事件简介 元素修改 节点操作 事件操作)
  • MySQL:事务隔离级别
  • Kubernets基础-包管理工具Helm详解
  • 计算机组成原理==初识二进制运算
  • Redisson分布式锁主从一致性问题
  • CentOS修改主机名
  • 【已解决】如何使用JAVA 语言实现二分查找-二分搜索折半查找【算法】手把手学会二分查找【数据结构与算法】
  • 用Qt 对接‌百度AI平台
  • 响应式流规范
  • 胤娲科技:谷歌DeepMind祭出蛋白质设计新AI——癌症治疗迎来曙光
  • DoppelGanger++:面向数据库重放的快速依赖关系图生成
  • JavaScript语法特点
  • linux 使用mdadm 创建raid0 nvme 磁盘
  • 深入理解SpringBoot(一)----SpringBoot的启动流程分析
  • 邮储银行:面向金融行业的移动应用安全风险监测案例
  • 【docker】命令之容器操作
  • C++:布尔类型,引用,堆区空间
  • 力扣232:用栈实现队列
  • 【Proteus仿真】基于51单片机的宠物喂食系统设计
  • JSON合并工具
  • JVM-类加载器的双亲委派模型详解
  • 前后端数据交互 笔记03(get和post方法)
  • 使用 Azure Functions 开发 Serverless 应用:详解与实战
  • LeetCode 1014. 最佳观光组合 一次遍历数组,时间复杂度O(n)
  • 【matlab】将程序打包为exe文件(matlab r2023a为例)
  • Linux文件IO(三)-Linux系统如何管理文件
  • 【基础知识】网络套接字编程