LAMP部署及应用

LAMP架构

LAMP架构是指一种常用的网站开发架构,它由以下几个组件组成:

  1. Linux操作系统:作为服务器的操作系统,LAMP架构通常使用Linux作为操作系统,因为Linux通常被认为是稳定和安全的。

  2. Apache HTTP服务器:作为网站服务器软件,Apache是最流行的开源HTTP服务器软件,它可以处理来自客户端的HTTP请求,并将请求转发给适当的后端应用程序。

  3. MySQL数据库服务器:作为关系型数据库管理系统,MySQL是一个常用的开源数据库服务器,它可以存储和检索网站的数据。

  4. PHP编程语言:作为服务器端脚本语言,PHP是一个流行的开源编程语言,它可以用来处理动态网页内容和与数据库交互。

部署LAMP架构

安装 MySQL 服务

(1)准备好mysql目录上传软件压缩包并解压

cd /opt
mkdir mysql
tar xf mysql-boost-5.7.44.tar.gz

(2)安装mysql环境依赖包

yum -y install ncurses ncurses-devel bison cmake openssl-devel gcc gcc-c++ make

(3)创建一个mysql用户

(4)进入软件包目录进行配置软件模块

cd /opt/mysql/mysql-boost-5.7.44cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8  \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=boost \
-DWITH_SYSTEMD=1

(5)编译

make -j 2 

(6)安装

make install

(7)修改/etc/my.cnf配置文件

CentOS7默认情况下会安装mariadb,先卸载 mariadb

yum remove -y mariadb*

然后添加 mysql 配置内容

[client]
port = 3306
socket=/usr/local/mysql/mysql.sock[mysqld]
user = mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
character-set-server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket=/usr/local/mysql/mysql.sock
bind-address = 0.0.0.0
skip-name-resolve
max_connections=2048
default-storage-engine=INNODB
max_allowed_packet=16M
server-id = 1sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES

(8)修改 mysql 安装目录和 my.cnf 配置文件的属主属组

chown -R mysql:mysql /usr/local/mysql/
chown mysql:mysql /etc/my.cnf

(9)设置路径的环境变量

进入/etc/profile文件中添加/bin /lib环境变量

或者

使用 echo 重定向输入到 /etc/profile 文件的末尾

echo 'export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile	

运行 /etc/profile 文件

source /etc/profile

(10)进入 /usr/local/mysql/bin/ 目录,进行初始化数据库

./mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data

(11)将 mysql 添加到 systemctl 服务管理并开启 

cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/systemctl daemon-reload
systemctl start mysqld.service
systemctl enable mysqld
netstat -anpt | grep 3306       #查看端口

(12)修改 mysql 的登录密码并授权远程登录

(13)输入 show databases; 可以查看当前数据库相关信息

(二)安装 php 服务

(1)上传 php 软件包到 /opt/php 目录下

mkdir php   #在opt目录下面创建一个php目录用于存放php软件包

(2)安装 php 环境依赖包

yum -y install \
gd \
libjpeg libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel

(3)解压 php 软件包

tar xf php-7.1.10.tar.bz2

(4)配置软件模版

切换到 /opt/php-7.1.10/ 目录下

cd /opt/php-7.1.10/

配置软件相关文件、路径、信息(必须在 /opt/php-7.1.10/ 目录下执行)

./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/httpd/bin/apxs \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-config-file-path=/usr/local/php/lib \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer \
--enable-zip

(5)编译

make -j 2    #注意当前计算机最大支持运行的核的数量

(6)安装

make install

(7)将 php 的可执行程序文件放入路径环境变量的目录(用于系统识别)

创建软连接

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iOS ReactiveCocoa MVVM

学习了在MVVM中如何使用RactiveCocoa,简单的写上一个demo。重点在于如何在MVVM各层之间使用RAC的信号来更方便的在各个层之间进行响应式数据交互。 demo需求:一个登录界面(登录界面只有账号和密码都有输入,登录按钮才可以点击操作)&#xff0…

AI模型部署:Triton+TensorRT部署Bert文本向量化服务实践

前言 本篇介绍以Triton作为推理服务器,TensorRT作为推理后端,部署句嵌入向量模型m3e-base的工程方案和实现,句嵌入模型本质上是Bert结构,本案例可以推广到更一般的深度学习模型部署场景。 内容摘要 推理服务器和推理后端介绍Ten…

【Numpy】numpy.r_用法

numpy.r_[字符串, 数组, 数组] numpy.r_的这三个整数默认值是0,1,-1 numpy.c_就是numpy.r_在三个整数是-1,2,0时的特例,因为常用,所以单独拎出来了。第一个参数-1指沿最后一个轴(维度)连接 有一个shape(2, 3, 4)的数组 np.random.randint(low0, high1…

文章MSM_metagenomics(一):介绍

介绍 欢迎大家关注全网生信学习者系列: WX公zhong号:生信学习者Xiao hong书:生信学习者知hu:生信学习者CDSN:生信学习者2 用于复现Huang et al. [huang2024establishment]研究分析的计算工作流程,所有复…

LDR6020显示器应用:革新连接体验,引领未来显示技术

一、引言 随着科技的飞速发展,显示器作为信息展示的重要载体,其性能和应用场景不断得到拓展。特别是在办公、娱乐以及物联网等领域,用户对显示器的需求越来越多样化。在这一背景下,LDR6020显示器的出现,以其卓越的性能…

STM32硬件接口I2C应用(基于HMC5883L)

目录 概述 1 STM32Cube控制配置I2C 1.1 I2C参数配置 1.2 使用STM32Cube产生工程 2 HAL库函数介绍 2.1 初始化函数 2.2 写数据函数 2.3 读数据函数 3 认识HMC5883L 3.1 HMC5883L功能介绍 3.2 HMC5883L的寄存器 4 HMC5883L驱动程序实现 4.1 驱动函数实现 4.2 完整驱…

QT调用vs2019生成的c++动态库

QT调用vs2019生成的c动态库 dll库的创建方法: VS2019创建c动态链接库dll与调用方法-CSDN博客 加减法示范: 头文件 // 下列 ifdef 块是创建使从 DLL 导出更简单的 // 宏的标准方法。此 DLL 中的所有文件都是用命令行上定义的 DLL3_EXPORTS // 符号编…

解决方案︱视频孪生智慧高速解决方案

系统概述 在交通强国战略的指导下,我国政府高度重视以数字化为核心的智慧高速公路建设与发展。2023年9月,交通运输部印发了《交通运输部关于推进公路数字化转型加快智慧公路建设发展的意见》,强调到2035年,全面实现公路数字化转型…

【C++】和【预训练模型】实现【机器学习】【图像分类】的终极指南

目录 💗1. 准备工作和环境配置💕 💖安装OpenCV💕 💖安装Dlib💕 下载并编译TensorFlow C API💕 💗2. 下载和配置预训练模型💕 💖2.1 下载预训练的ResNet…

一文入门vim

先来波快问快答。 第一个问题,vim是什么? vim就是一文本编辑器。 第二个问题,我们为什么要使用vim? 好像在终端中可选择使用的文本编辑器也不多(其他有,但是相对而言vim用的比较广泛) 第三…

automa学习:写一个取某东图书数据的片断

周五了,实在没事情了。正好上午有个朋友问automa的事,心想再写一个练习一下,毕竟,熟能生巧。 目标某东图书: 分析及介绍如下。 1.新建标签页 1.悬停元素。要注意 县 停 .cate_menu_item:nth-child(14) > .cate_…

SQL进阶day10————多表查询

目录 1嵌套子查询 1.1月均完成试卷数不小于3的用户爱作答的类别 1.2月均完成试卷数不小于3的用户爱作答的类别 ​编辑1.3 作答试卷得分大于过80的人的用户等级分布 2合并查询 2.1每个题目和每份试卷被作答的人数和次数 2.2分别满足两个活动的人 3连接查询 3.1满足条件…

【docker】如何解决artalk的跨域访问问题

今天折腾halo的时候,发现artalk出现跨域访问报错,内容如下。 Access to fetch at https://artk.musnow.top/api/stat from origin https://halo.musnow.top has been blocked by CORS policy: The Access-Control-Allow-Origin header contains multipl…

【字符函数】

接下来介绍部分字符函数测试 2. 字符转换函数 1.字符分类函数 1.1iscntrl 注:任何控制字符 检查是否有控制字符 符合为真 int main() {int i 0;char str[] "first line \n second line \n";//判断是否遇到控制字符while (!iscntrl(str[i])){p…

AI办公自动化:kimi批量搜索提取PDF文档中特定文本内容

工作任务:PDF文档中有资料来源这一行,比如: 资料来源:moomoo tech、The Information、Bloomberg、Reuters,浙商证券研究所 数据来源:CSDN、浙商证券研究所 数据来源:CSDN、arXiv、浙商证券研…

效率翻倍!ComfyUI 必装的工作流+模型管理插件 Workspace Manager

一、Workspace Manager 安装方式 插件 Github 网址: https://github.com/11cafe/comfyui-workspace-manager 如果你没有安装 Workspace Manager 插件,可以通过以下 2 种方式安装: ① 通过 ComfyUI Manager 安装(推荐&#xff0…

这世上又多了一只爬虫(spiderflow)

让我们一起默念: 爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫爬虫 接着大声喊出来: 一!只!爬!虫!呀!爬!呀!爬&#xf…

【机器学习】因TensorFlow所适配的numpy版本不适配,用anaconda降低numpy的版本

目录 0 TensorFlow最高支持的numpy版本 1 激活你的环境(如果你正在使用特定的环境) 2 查找可用的NumPy版本 3 安装特定版本的NumPy 4. 验证安装 5.(可选)如果你更改了base环境 0 TensorFlow最高支持的numpy版本 要使用 …

[C#]使用C#部署yolov10的目标检测tensorrt模型

【测试通过环境】 win10 x64vs2019 cuda11.7cudnn8.8.0 TensorRT-8.6.1.6 opencvsharp4.9.0 .NET Framework4.7.2 NVIDIA GeForce RTX 2070 Super cuda和tensorrt版本和上述环境版本不一样的需要重新编译TensorRtExtern.dll,TensorRtExtern源码地址:T…

Rust 实战丨并发构建倒排索引

引言 继上篇 Rust 实战丨倒排索引,本篇我们将参考《Rust 程序设计(第二版)》中并发编程篇章来实现高并发构建倒排索引。 本篇主要分为以下几个部分: 功能展示:展示我们最终实现的 2 个工具的效果(构建索…