LAMP搭建

LAMP搭建

引子:本篇文章为LAMP的搭建流程,其中L(Ubuntu)、A(Apache)、M(Mysql)、P(PHP)。

一、L → Ubuntu

Step 1:在Vmware Workstation中使用Ubuntu 22.04 ISO镜像安装Ubuntu。

  1. 搜索Ubuntu ISO 清华镜像下载,下载Ubuntu 22.04镜像文件。
  2. 下载完成后,通过VM且使用下载好的镜像文件,安装Ubuntu 22.04。
    • 首先需设置虚拟机硬件信息。
    • 虚拟机硬件设置完成后,跟随GUI引导安装Ubuntu系统。

二、A → Apache

Step 2:Ubuntu安装Apache中间件,参考文章:https://blog.csdn.net/qq_35241329/article/details/135748068

  1. 更新apt软件包索引

    bash 复制代码
    # 以root用户权限执行更新软件包索引
    sudo apt update
  2. 使用apt安装apache中间件

    bash 复制代码
    # 安装apache
    sudo apt install apache2
  3. 确认apache服务状态

    bash 复制代码
    # 确认apache服务状态
    sudo systemctl status apache2
    # 设置apache服务开机自启
    sudo systemctl enable apache2
  4. 防火墙放通apache服务

    bash 复制代码
    # 防火墙放通访问apache服务的入站流量
    sudo ufw allow 'Apache'
    # 查看防火墙状态
    sudo ufw status
    bash 复制代码
    # 至于这个'Apache'具体是什么?
    # 可查看Apache服务所提供给防火墙的配置文件
    sudo cat /etc/ufw/applications.d/apache2-utils.ufw.profile
  5. 使用浏览器访问Ubuntu虚拟机的80端口,验证Apache是否安装&配置成功。

三、M → Mysql

Step 3:Ubuntu安装Mysql服务,参考文章:https://blog.csdn.net/weixin_45626288/article/details/133220238

  1. 使用apt安装Mysql服务。

    bash 复制代码
    # 安装mysql
    sudo apt install mysql-server
  2. 确认Mysql服务状态。

    bash 复制代码
    # 查看mysql服务状态
    sudo systemctl status mysql
    # 设置mysql服务开机自启
    sudo systemctl enable mysql
    bash 复制代码
    # 查看安装mysql服务版本
    sudo mysql --version
  3. 为Mysql中root用户设置密码

    bash 复制代码
    # 以root用户登录mysql
    sudo mysql -u root
    mysql 复制代码
    # 设置root用户密码为:123456
    alter user 'root'@'localhost' identified with mysql_native_password by '123456';
    bash 复制代码
    # 密码设置完成后,再次以root用户登录
    sudo mysql -u root -p

四、P → PHP

Step 4:Ubuntu安装PHP,并通过脚本验证PHP能否实现与Mysql的通信。让我们请出万能的GPT。

  1. apt安装php。

    bash 复制代码
    # 安装php及相关组件
    sudo apt install php php-cli php-mysql
    bash 复制代码
    # 重启apache服务,使之加载php模块
    sudo systemctl restart apache2
    # 查看安装php版本信息
    sudo php -v
  2. 测试PHP是否能与Mysql通信。

    • 写一个PHP与Mysql间的通信脚本。

      php 复制代码
      <?php
      echo "Hello~ ^_^".'<hr>';
      
      $servername = "localhost";
      $username = "root";
      $password = "123456";
      $dbname = "mysql";
      
      // 创建连接
      $conn = new mysqli($servername, $username, $password, $dbname);
      
      // 检测连接
      if ($conn->connect_error) {
          die("连接失败: " . $conn->connect_error);
      } 
      echo "成功连接到 MySQL 数据库!";
      
      // 关闭连接
      $conn->close();
      ?>
    • 上传脚本至/var/www/html目录下。(注:该脚本于other用户需要有读权限。)

    • 使用浏览器访问该脚本文件测试是否能成功通信。

至此,LAMP搭建实验完成!

相关推荐
00后程序员张5 分钟前
Flutter的自动化测试 python flutter编程
websocket·网络协议·tcp/ip·http·网络安全·https·udp
小杨xyyyyyyy10 分钟前
计算机网络 - TCP协议
网络·网络协议·tcp/ip·计算机网络·面试
DXM052122 分钟前
牟乃夏《ArcGIS Engine地理信息系统开发教程》学习笔记2
开发语言·javascript·笔记·学习·arcgis·ae
.R^O^23 分钟前
计算机知识
linux·服务器·网络·安全
寻丶幽风27 分钟前
论文阅读笔记——Multi-Token Attention
论文阅读·笔记·深度学习·语言模型·transformer
sky.fly34 分钟前
三层路由器,SSH远程登录访问路由器,通过telnet远程登录访问路由器(不安全),路由器的基本设置之多网络互联解决办法:单臂路由
服务器·网络·计算机网络·智能路由器
00后程序员张1 小时前
Flutter 从零到一
websocket·网络协议·tcp/ip·http·网络安全·https·udp
卡戎-caryon1 小时前
【Linux网络与网络编程】11.数据链路层mac帧协议&&ARP协议
linux·服务器·网络·笔记·tcp/ip·数据链路层
梦の1 小时前
C++Cherno 学习笔记day21 [86]-[90] 持续集成、静态分析、参数计算顺序、移动语义、stdmove与移动赋值操作符
c++·笔记·学习
tuodianke1 小时前
记录待办事项的便签软件有没有推荐的?
笔记·职场发展·软件需求·备忘录模式