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

OpenEuler学习笔记(十一):OpenEuler上搭建LAMP环境

LAMP环境指的是Linux、Apache、MySQL(或MariaDB)和PHP的组合,下面为你介绍在OpenEuler上搭建LAMP环境的详细步骤:
在这里插入图片描述

1. 系统更新

首先要更新系统中的软件包,保证系统处于最新状态。

sudo dnf update -y

2. 安装Apache

运用dnf包管理器来安装Apache Web服务器。

sudo dnf install httpd -y

安装完成后,启动Apache服务并且设置为开机自启。

sudo systemctl start httpd
sudo systemctl enable httpd

接着,配置防火墙,开放HTTP(80端口)和HTTPS(443端口)。

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

3. 安装数据库(MariaDB)

OpenEuler默认采用MariaDB作为数据库,你可以使用以下命令进行安装:

sudo dnf install mariadb-server -y

安装完成后,启动MariaDB服务并设置为开机自启。

sudo systemctl start mariadb
sudo systemctl enable mariadb

为保证数据库的安全,需要运行安全脚本对数据库进行初始化设置。

sudo mysql_secure_installation

依据提示设置root密码,移除匿名用户,禁止root远程登录等。
在这里插入图片描述

4. 安装PHP及相关扩展

使用dnf安装PHP以及与Apache集成所需的扩展。

sudo dnf install php php-mysqlnd php-fpm -y

安装完成后,重启Apache服务使PHP配置生效。

sudo systemctl restart httpd

5. 验证LAMP环境

创建一个PHP测试文件来验证PHP是否能正常工作。

sudo echo "<?php phpinfo(); ?>" > /var/www/html/info.php

在浏览器中输入服务器的IP地址加上/info.php(例如http://your_server_ip/info.php),若能看到PHP的信息页面,就表明LAMP环境搭建成功。

代码解释与使用说明

  • 系统更新sudo dnf update -y会自动更新系统中的所有软件包,-y参数可自动确认所有提示。
  • Apache安装与配置
    • sudo dnf install httpd -y用于安装Apache Web服务器。
    • systemctl start httpdsystemctl enable httpd分别用于启动和设置Apache开机自启。
    • firewall-cmd命令用来配置防火墙,开放HTTP和HTTPS端口。
  • MariaDB安装与配置
    • sudo dnf install mariadb-server -y用于安装MariaDB数据库。
    • systemctl start mariadbsystemctl enable mariadb分别用于启动和设置MariaDB开机自启。
    • sudo mysql_secure_installation用于初始化数据库安全设置。
  • PHP安装与配置
    • sudo dnf install php php-mysqlnd php-fpm -y用于安装PHP及其相关扩展。
    • sudo systemctl restart httpd重启Apache服务使PHP配置生效。
  • 验证LAMP环境sudo echo "<?php phpinfo(); ?>" > /var/www/html/info.php创建一个PHP文件,通过浏览器访问该文件可验证PHP是否正常工作。

按照以上步骤操作,你就能在OpenEuler上成功搭建LAMP环境。

http://www.lryc.cn/news/525790.html

相关文章:

  • Mongodb 慢查询日志分析 - 1
  • MySQL面试题2025 每日20道【其四】
  • 微服务学习-Nacos 注册中心实战
  • k8s服务StatefulSet部署模板
  • 07 区块链安全技术
  • Adobe的AI生成3D数字人框架:从自拍到生动的3D化身
  • dfs专题四:综合练习
  • 【线性代数】列主元法求矩阵的逆
  • 大写——蓝桥杯
  • HTML `<head>` 元素详解
  • 一文速通stack和queue的理解与使用
  • Antd React Form使用Radio嵌套多个Select和Input的处理
  • Vue - toRefs() 和 toRef() 的使用
  • Python3 OS模块中的文件/目录方法说明九
  • OpenCV文字绘制支持中文显示
  • opengrok_windows_多工程环境搭建
  • 基于ollama,langchain,springboot从零搭建知识库三【解析文档并存储到向量数据库】
  • Elasticsearch 和arkime 安装
  • git回退
  • pytest+playwright落地实战大纲
  • 01-硬件入门学习/嵌入式教程-CH340C使用教程
  • 小试牛刀调整Prompt,优化Token消耗
  • snippets router pinia axios mock
  • Visual Studio2019调试DLL
  • 深入解析:Docker 容器如何实现文件系统与资源的多维隔离?
  • vue项目中打包后的地址加载不出图片【五种解决方案】
  • 讯飞星火大模型将超越chatgpt?
  • 3D Vision--计算点到平面的距离
  • 《开源与合作:驱动鸿蒙Next系统中人工智能技术创新发展的双引擎》
  • Java 高级工程师面试高频题:JVM+Redis+ 并发 + 算法 + 框架