LAMP的运用

news2025/1/23 13:57:12

LAMP的运用

  • 一、LAMP
  • 二、编译安装apache http服务
  • 三、编译安装mysqld服务
  • 四、编译安装PHP解析环境
  • 五、安装论坛

一、LAMP

LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写词,具体包括Linux操作系统、apache网站服务器、MySQL数据库服务器、PHP(或Perl、python)网页编程语言。

各组件的主要作用如下:
Linux(平台):作为LAMP架构基础,提供用于支撑Web站点的操作系统,能够与其他三个组件提供更好的稳定性,兼容性(AMP组件也支持Windows、UNIX等平台)
Apache(前端):作为LAMP架构的前端,是一款功能强大,稳定性好的web服务器程序,该服务器直接面向用户提供网站访问,发送网页,图片等文件内容
MySQL(后端):作为LAMP架构的后端,是一款流行的开源关系数据库系统。在企业网站、业务系统等应用中,各种账户信息、产品信息、客户资料、业务数据等都可以存储到MySQL数据库,其他程序可以通过SQL语句来查询,更改这些信息
PHP/Perl/python(中间连接):作为三种开发动态网页的编程语言,负责解释动态网页文件,负责沟通web服务器和数据库系统以协同工作,并提供web应用程序的开发和运行环境。其中PHP是一种被广泛应用的开放源代码的多用途脚本语言,它可以嵌入到HTML中,尤其适用于web应用开发。

在构建LAMP平台时,各组件的安装顺序依次为:Linux、Apache、MySQL、PHP。其中apache和MySQL的安装并没有严格的顺序,PHP环境的安装一般放到最后安装,负责沟通web服务器和数据库系统以协同工作。

二、编译安装apache http服务

  • 关闭防火墙,将安装apache所需软件包传到/opt目录下
    在这里插入图片描述
    在这里插入图片描述
    apr组件包用于支持apache上层应用跨平台,提供底层接口库,能有效的降低并发连接数,降低进程和减少访问堵塞。

  • 安装环境依赖包
    在这里插入图片描述

  • 配置软件模块
    在这里插入图片描述
    在这里插入图片描述
    –prefix=/usr/local/http:指定将httpd服务程序的安装路径
    –enable-so:启用动态加载模块支持,是httpd具备进一步扩展的能力
    –enable-rewrite:启用网页地址重写功能,用于网站优化、防盗链及目录迁移维护
    –enable-cgi:启用CGI(通用网关接口)脚本程序支持,便于网站的外部扩展应用访问能力

  • 编译及安装
    在这里插入图片描述
    make install安装

  • 优化配置路径,并将http服务的可执行程序文件放入路径环境变量的目录中便于系统识别
    在这里插入图片描述

  • 添加http系统服务
    在这里插入图片描述

在这里插入图片描述

  • 修改httpd服务配置文件
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • 浏览器访问验证
    在这里插入图片描述

三、编译安装mysqld服务

  • 将安装mysql所需软件包传到opt目录下
    在这里插入图片描述

  • 安装环境依赖包
    在这里插入图片描述
    ncurses:字符终端下图形互动功能的动态库
    ncurses:ncurses开发包
    bison:语法分析器
    cmake:mysql需要用cmake编译安装

  • 配置软件模块
    先解压两个压缩包
    在这里插入图片描述
    在这里插入图片描述
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #指定mysql的安装路径
    -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ #指定mysql进程监听套接字文件(数据库连接文件)的存储路径
    -DSYSCONFDIR=/etc \ #指定配置文件的存储路径
    -DSYSTEMD_PID_DIR=/usr/local/mysql \ #指定进程文件的存储路径
    -DDEFAULT_CHARSET=utf8 \ #指定默认使用的字符集编码,如 utf8
    -DDEFAULT_COLLATION=utf8_general_ci \ #指定默认使用的字符集校对规则
    -DWITH_EXTRA_CHARSETS=all \ #指定支持其他字符集编码
    -DWITH_INNOBASE_STORAGE_ENGINE=1 \ #安装INNOBASE存储引擎
    -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ #安装ARCHIVE存储引擎
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ #安装BLACKHOLE存储引擎
    -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ #安装FEDERATED存储引擎
    -DMYSQL_DATADIR=/usr/local/mysql/data \ #指定数据库文件的存储路径
    -DWITH_BOOST=/usr/local/boost \ #指定boost的路径,若使用mysql-boost集成包安装则-DWITH_BOOST=boost
    -DWITH_SYSTEMD=1 #生成便于systemctl管理的文件

注意:如果在cmake的过程中报错,当问题解决后,需要将源码目录中的cmakecacke.txt文件删除,文件就在目录中,然后再重新cmake,否则错误依旧。

  • 编译及安装
    make编译,建议使用多核编译,否则需要很长时间
    make install安装

  • 创建mysql用户
    在这里插入图片描述

  • 修改mysql配置文件
    配置文件在/etc/my.cnf
    在这里插入图片描述

  • 更改mysql安装目录和配置文件的属主属组
    在这里插入图片描述
    如果不修改的话默认的是root

  • 设置路径环境变量
    在/etc/profile配置文件
    在这里插入图片描述
    配置完之后使用source /etc/profile刷新

  • 初始化数据库
    在这里插入图片描述
    –initialize-insecure \ #生成初始化密码为空
    –user=mysql \ #指定管理用户
    –basedir=/usr/local/mysql \ #指定数据库的安装目录
    –datadir=/usr/local/mysql/data #指定数据库文件的存储路径

  • 添加mysqld系统服务
    在这里插入图片描述

  • 修改mysql的登录密码
    在这里插入图片描述

  • 授权远程登入
    在这里插入图片描述

四、编译安装PHP解析环境

  • 将安装PHP所需软件包传到虚拟机
    在这里插入图片描述
  • 安装GD库和GD库关联程序,用来处理和生成图片
    在这里插入图片描述
  • 配置软件模块
    在这里插入图片描述
  • 编译及安装
    make编译
    make install安装
  • 复制模板文件作为PHP的主配置文件,并进行修改
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 优化把PHP的可执行程序文件放入路径环境变量的目录中便于系统识别
    在这里插入图片描述
  • 修改http服务的配置文件,让apache支持PHP
    配置文件在/etc/httpd.conf
    在这里插入图片描述

在这里插入图片描述

  • 验证PHP测试页
    在这里插入图片描述
    在这里插入图片描述
    完事重启httpd服务
    进入浏览器测试
    在这里插入图片描述

五、安装论坛

  • 创建数据库并进行授权
    在这里插入图片描述
  • 解压压论坛压缩包
    使用unzip命令进行解压
    在这里插入图片描述
    在这里插入图片描述
  • 更改论坛目录的属主
    在这里插入图片描述
  • 浏览器访问验证
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/582006.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《痞子衡嵌入式半月刊》 第 77 期

痞子衡嵌入式半月刊: 第 77 期 这里分享嵌入式领域有用有趣的项目/工具以及一些热点新闻,农历年分二十四节气,希望在每个交节之日准时发布一期。 本期刊是开源项目(GitHub: JayHeng/pzh-mcu-bi-weekly),欢迎提交 issue&#xff0c…

【JavaSE】Java基础语法(二十八):HashSet集合

文章目录 1. HashSet集合概述和特点2. HashSet集合的基本应用3. 哈希值4. HashSet集合存储学生对象并遍历【应用】 1. HashSet集合概述和特点 底层数据结构是哈希表存取无序不可以存储重复元素没有索引,不能使用普通for循环遍历 2. HashSet集合的基本应用 存储字符串并遍历 …

Pytorch深度学习之神经网络入门详解

目录 Pytorch 入门 1.将每个图片的label作为txt文件写入另外一个文件夹(txt文件名与图片文件名相同) 2.tensorboard的summary writer 3.torchvision中的transforms 4.DataLoader 5.神经网络-卷积层Conv2d 6.最大池化层 7.非线性激活函数Relu 9.…

微信的大动作,很多人要颤抖了

4月25日,微信团队发布关于微信公众号营销内容合规规范通知,要求公众号在投放商业广告时需要标注广告字样。 刚开始觉得也没啥,无非就是加个广告的字样,让消费者可以及时识别出来, 但从效果来看,似乎效果并不…

华为OD机试真题B卷 Java 实现【猜密码】

一、题目描述 小杨申请了一个保密柜,但是他忘记了密码。只记得密码都是数字,而且所有数字都是不重复的。 请你根据他记住的数字范围和密码的最小数字数量,帮他算下有哪些可能的组合,规则如下: 输出的组合都是从可选的数字范围中选取的,且不能重复;输出的密码数字要按照…

意外的坚持,意外的收获!

前言: 转眼间,2023就快过了一半,回忆间感觉跟过完年没多久一样;时间是真的过的快...... 简单总结一下最近: 一、锻炼身体: 最近这段时间开始恢复锻炼身体,现在感觉一天下班回来,身体…

Java 21 新特性和改进

Java 21 是 Java 17 之后的下一个 LTS 版本。虚拟线程在 Java 21 中将成为正式功能。可以预期的是,Java 21 会成为一个很流行的 Java 版本。 Java 21 将在 2023 年 9 月 19 日发布。目前 Java 21 包含的内容已经基本确定了。下面来梳理一下 Java 21 中会包含的内容。…

【AI提示】ChatGPT提示工程课程(吴恩达OpenAI)转换文本(中文chatgpt版)

设置 翻译 通用翻译器 语调变换 格式转换 拼写检查/语法检查。 转换 在本笔记中,我们将探索如何使用大型语言模型进行文本转换任务,例如语言翻译、拼写和语法检查、语气调整和格式转换。 设置 import openai import osfrom dotenv import load_dotenv, f…

Maven初级

Maven初级 Maven简介 传统项目管理状态分析 jar包不统一,jar包不兼容工程升级维护过程操作繁琐 Maven是什么 Maven的本质是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM)POM:项目对象模型 Ma…

一图看懂 itsdangerous 模块:将受信任的数据传递到不受信任的环境的帮助工具,资料整理+笔记(大全)

本文由 大侠(AhcaoZhu)原创,转载请声明。 链接: https://blog.csdn.net/Ahcao2008 一图看懂 itsdangerous 模块:将受信任的数据传递到不受信任的环境的帮助工具,资料整理笔记(大全) 🧊摘要🧊模块…

Ae:跟踪摄像机

在时间轴面板上选择要跟踪的素材图层,在跟踪器面板中单击跟踪摄像机 Track Camera按钮之后,会向素材图层添加“3D 摄像机跟踪器” 3D Camera Tracker效果,并立即对视频画面逐帧分析以反求原始摄像机运动。 还有其它几种添加 3D 摄像机跟踪器效…

GeForce RTX 3060 Ti+cuda 11.6+Anaconda3搭建Pytorch深度学习环境

室友新购入一个笔记本,笔记本的显卡是GeForce RTX 3060 Ti,记录一下使用GeForce RTX 3060 Ticuda 11.6Anaconda3搭建Pytorch深度学习环境。 安装很简单,当你有了Python环境时记住一个核心命令即可,显卡驱动因该在之前已经安装过了…

ChatGPT 与我合力开发 xargin blog archive 插件:曹大博客的新奇探险

之前写的批量删除 chatGPT 对话的插件[1],最近我收到了一个五星好评: 虽然不赚钱,交个朋友嘛,还是挺高兴的。而且借助 chatGPT,我是在与全世界的用户交流,想想就激动。 最近我发现自己让 chatGPT 帮忙写前端…

jQuery其他方法及插件使用

1. 拷贝对象 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-width,…

跨域 + 四种解决办法

目录 同源策略 解决方案 1、jsonp 2、前端代理 3、后端解决 4、Nginx代理 同源策略 说到跨域就不得不提到同源策略&#xff0c;什么是同源策略&#xff1f; 请求的时候拥有相同的 协议 域名 端口 只要有一个不同就属于跨域 解决方案 解决跨域问题一共有四种方式&#xff…

chatgpt赋能python:Python中的Join方法详解:简化拼接字符串的操作

Python中的Join方法详解&#xff1a;简化拼接字符串的操作 在Python编程中&#xff0c;拼接字符串是一项常见的操作。在过去&#xff0c;我们通常使用“”符号来连接多个字符串。但是&#xff0c;这种方法不是很高效&#xff0c;特别是当需要拼接大量字符串时。这时候&#xf…

基于html+css的图展示98

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

python+django+vue学生在线选课系统93pul

随着信息化时代的到来&#xff0c;网络系统都趋向于智能化、系统化&#xff0c;选课系统也不例外&#xff0c;但目前国内的有些学校仍都使用人工管理&#xff0c;学校规模越来越大&#xff0c;同时信息量也越来越庞大&#xff0c;人工管理显然已无法应对时代的变化&#xff0c;…

初识Spring -- Spring入门保姆级教程(一)

文章目录 前言一、Spring是什么&#xff1f;1.概述2.了解spring家族3.spring系统概述4.spring优点5.spring学习路线 二、入门spring1.核心概念2.IOC入门案例3.DI入门案例4.bean的配置5.spring 中 bean的实例化--构造方法6.bean的实例化 -- 静态工厂实例化7.bean实例化--实例工厂…

IEEE802.3和IEEE802.11的分类(仅为分类)

IEEE802.3标准 IEEE802.3:10兆以太网 ●10Base&#xff0d;5 使用粗同轴电缆&#xff0c;最大网段长度为500m&#xff0c;基带传输方法&#xff1b; ●10Base&#xff0d;2 使用细同轴电缆&#xff0c;最大网段长度为185m&#xff0c;基带传输方法&#xff1b; ●10Base&am…