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

LAMP环境下项目部署

目录

目录

1、创建一台虚拟机

centos 源的配置

备份源

修改源

重新加载缓存

安装软件

2、关闭防火墙和selinux

查看防火墙状态

关闭防火墙

查看SELinux的状态

临时关闭SELinux

永久关闭SELinux:编辑SELinux的配置文件

配置文件的修改内容

3、检查系统中是否已经安装Apache、MySQL、PHP

检查Apache

4、Apache安装

安装httpd软件

配置httpd.conf文件

修改配置文件内容

启动httpd

5、MySQL安装

下载MySQL的官网yum源

安装MySQL的官网镜像源

使用yum安装mysql最新版软件

启动mysql,查看端口占用情况

MySQL数据库初始化(重要)

初始化数据,设置root密码(MySQL管理员)

把mysqld服务添加到开机启动项

连接MySQL数据库,测试

6、PHP安装

使用yum命令安装php软件

7、测试LAMP环境是否可以使用

第一步:进入/var/www/html目录

第二步:使用vim命令创建demo.php文件

第三步:编写php代码

8、部署Discuz!论坛

下载源代码

使用unzip对discuz.zip压缩包进行解压

复制discuz中的文件到/var/www/html目录

打开浏览器,输入公网IP地址

单击同意继续安装

解决PHP扩展问题

添加 EPEL and REMI 仓库

安装PHP 7.4、启用PHP 7.4 Remi 仓库

安装扩展

配置

 查看版本

重启httpd

设置开机启动

刷新页面 环境问题解决

上图显示 部分目录不可写,不存在,红色×号需解决

再次刷新,全部搞定

跟着步骤继续安装

9、安装完成后,点击直接访问站点,访问论坛首页


1、创建一台虚拟机

centos 源的配置

备份源

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

修改源

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

重新加载缓存

yum makecache

安装软件

  • zip:用于压缩文件。
  • unzip:用于解压缩 .zip 文件。
  • vim:一种强大的文本编辑器。
  • wget:用于从网络上下载文件。
  • httpd:Apache HTTP 服务器。
  • lsof:列出当前打开的文件。
  • net-tools:包含网络工具,如 ifconfig
  • at:用于计划任务的命令。
  • cronie:提供计划任务的功能。
  • openssh*:安装所有与 OpenSSH 相关的软件包,包括客户端和服务器端。
  • ntp:网络时间协议客户端,用于同步系统时间。
  • gdisk:用于管理 GPT 分区表的工具。
yum -y install zip unzip vim wget httpd lsof net-tools at cronie openssh* ntp gdisk

2、关闭防火墙和selinux

查看防火墙状态

systemctl status firewalld

关闭防火墙

systemctl stop firewalld

查看SELinux的状态

getenforce

临时关闭SELinux

setenforce 0

永久关闭SELinux:编辑SELinux的配置文件

vim /etc/selinux/config

配置文件的修改内容

SELINUX=disabled

disabled 关闭   enable  开启

3、检查系统中是否已经安装Apache、MySQL、PHP

检查Apache

rpm -qa | grep httpd

卸载已安装的Apache

(httpd-2.4.6-90.el7.centos.x86_64、httpd-tools-2.4.6-90.el7.centos.x86_64)为已安装的Apache版本文件

rpm -e httpd-2.4.6-90.el7.centos.x86_64
rpm -e httpd-tools-2.4.6-90.el7.centos.x86_64

检查MySQL

 rpm -qa |grep mysql

检查PHP

rpm -qa |grep php

4、Apache安装

安装httpd软件

yum install httpd -y

配置httpd.conf文件

vim /etc/httpd/conf/httpd.conf

修改配置文件内容

搜索ServerName 修改为以下内容   并保存退出

ServerName localhost:80

启动httpd

systemctl start httpd

把httpd服务添加到开机启动项中

systemctl enable httpd

查询httpd占用的端口

ss -naltp |grep httpd

浏览器中使用IP访问服务器

http://...............

5、MySQL安装

下载MySQL的官网yum源

wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

安装MySQL的官网镜像源

rpm -ivh mysql-community-release-el7-5.noarch.rpm

使用yum安装mysql最新版软件

yum install mysql-community-server -y

启动mysql,查看端口占用情况

systemctl start mysqld
netstat -tnlp |grep mysqld

MySQL数据库初始化(重要)

默认情况下,数据库没有密码,也没有任何数据,必须要初始化

初始化数据,设置root密码(MySQL管理员)

所有都选Y即可

mysql_secure_installation

把mysqld服务添加到开机启动项

systemctl enable mysqld

连接MySQL数据库,测试

mysql -u root -p

6、PHP安装

使用yum命令安装php软件

yum install php -y

使用systemctl启动php软件(重启Apache)

systemctl restart httpd

7、测试LAMP环境是否可以使用

第一步:进入/var/www/html目录

cd /var/www/html

Apache的项目目录 => /var/www/html,以后程序员开发的代码都是放置于此目录

第二步:使用vim命令创建demo.php文件

vim demo.php

第三步:编写php代码

创建一个test.php文件并编辑写入测试代码

<?php
echo 'hello world!';
?>

8、部署Discuz!论坛

下载源代码

下载地址:https://gitee.com/ComsenzDiscuz/DiscuzX (码云)

https://gitee.com/Discuz/DiscuzX

使用unzip对discuz.zip压缩包进行解压

unzip DiscuzX-v3.5.zip

复制discuz中的文件到/var/www/html目录

mv DiscuzX-v3.5/* /var/www/html/

打开浏览器,输入公网IP地址

192.168.77.110/upload

单击同意继续安装

解决PHP扩展问题

表示当前的php版本太低,需要升级php

添加 EPEL and REMI 仓库

yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm

安装PHP 7.4、启用PHP 7.4 Remi 仓库

yum -y install yum-utils
yum-config-manager --enable remi-php74
yum update
yum install php php-cli

安装扩展

yum install php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json

配置

 查看版本

php -v

重启httpd

systemctl restart httpd

设置开机启动

systemctl enable php-fpm.service
systemctl start php-fpm.service

刷新页面 环境问题解决

上图显示 部分目录不可写,不存在,红色×号需解决

chmod -R a+r /var/www/html

再次刷新,全部搞定

而如果刷新之后还是出现这个页面时

一般就是以下两种情况

第一种权限没给够,使用

chmod -R 777 /var/www/html/

直接把全部权限都给了

第二种就是selinux状态没有更改,就第二个步骤中的永久关闭selinux

跟着步骤继续安装

9、安装完成后,点击直接访问站点,访问论坛首页

相关文章:

LAMP环境下项目部署

目录 目录 1、创建一台虚拟机 centos 源的配置 备份源 修改源 重新加载缓存 安装软件 2、关闭防火墙和selinux 查看防火墙状态 关闭防火墙 查看SELinux的状态 临时关闭SELinux 永久关闭SELinux&#xff1a;编辑SELinux的配置文件 配置文件的修改内容 3、检查系统…...

Visual Studio 2022从外部引入dll导致的问题

这里以我学MapGIS二次开发的一个小demo为例 一、如何引入dll 1、在解决方案资源管理器中&#xff0c;有个引用的选项 2、然后右键点击添加引用 点击之后会出现如下&#xff1a; 3、点击浏览选项&#xff0c;选择想要引入dll的路径&#xff0c;这里我选择下载MapGIS 10的路径 …...

大模型从失败中学习 —— 微调大模型以提升Agent性能

人工智能咨询培训老师叶梓 转载标明出处 以往的研究在微调LLMs作为Agent时&#xff0c;通常只使用成功的交互轨迹&#xff0c;而丢弃了未完成任务的轨迹。这不仅造成了数据和资源的浪费&#xff0c;也可能限制了微调过程中可能的优化路径。论文《Learning From Failure: Integ…...

10.web应用体系以及windows网络常见操作应用

一、Dos命令 1.启动方式&#xff1a;winR&#xff0c;输入cmd 2.切换盘符/路径&#xff1a;盘符名称&#xff1a; &#xff08;C:) cd 目录 &#xff08;cd B111&#xff09;&#xff08;目录名按table键自动补全&#xff09; 3.查看目录&#xff1a;dir dir /p 分页展示目录及…...

【数据结构与算法 | 灵神题单 | 前后指针(链表)篇】力扣19, 61,1721

1. 力扣19&#xff1a;删除链表的倒数第N个节点 1.1 题目&#xff1a; 给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], n 2 输出&#xff1a;[1,2,3,5]示例 2&#xff1a; …...

机器学习之实战篇——MNIST手写数字0~9识别(全连接神经网络模型)

机器学习之实战篇——Mnist手写数字0~9识别&#xff08;全连接神经网络模型&#xff09; 文章传送MNIST数据集介绍&#xff1a;实验过程实验环境导入模块导入MNIST数据集创建神经网络模型进行训练&#xff0c;测试&#xff0c;评估模型优化 文章传送 机器学习之监督学习&#…...

ICLR2024: 大视觉语言模型中对象幻觉的分析和缓解

https://arxiv.org/pdf/2310.00754 https://github.com/YiyangZhou/LURE 背景 对象幻觉&#xff1a;生成包含图像中实际不存在的对象的描述 早期的工作试图通过跨不同模式执行细粒度对齐&#xff08;Biten et al.&#xff0c;2022&#xff09;或通过数据增强减少对象共现模…...

数据库系统 第54节 数据库优化器

数据库优化器是数据库管理系统&#xff08;DBMS&#xff09;中的一个关键组件&#xff0c;它的作用是分析用户的查询请求&#xff0c;并生成一个高效的执行计划。这个执行计划定义了如何访问数据和执行操作&#xff0c;以最小化查询的执行时间和资源消耗。以下是数据库优化器的…...

微服务杂谈

几个概念 还是第一次听说Spring Cloud Alibaba &#xff0c;真是孤陋寡闻了&#xff0c;以前只知道 SpringCloud 是为了搭建微服务的&#xff0c;spring boot 则是快速创建一个项目&#xff0c;也可以是一个微服务 。那么SpringCloud 和 Spring boot 有什么区别呢&#xff1f;S…...

【Pandas操作2】groupby函数、pivot_table函数、数据运算(map和apply)、重复值清洗、异常值清洗、缺失值处理

1 数据清洗 #### 概述数据清洗是指对原始数据进行处理和转换&#xff0c;以去除无效、重复、缺失或错误的数据&#xff0c;使数据符合分析的要求。#### 作用和意义- 提高数据质量&#xff1a;- 通过数据清洗&#xff0c;数据质量得到提升&#xff0c;减少错误分析和错误决策。…...

如何分辨IP地址是否能够正常使用

在互联网的日常使用中&#xff0c;无论是进行网络测试、网站访问、数据抓取还是远程访问&#xff0c;一个正常工作的IP地址都是必不可少的。然而&#xff0c;由于各种原因&#xff0c;IP地址可能无法正常使用&#xff0c;如被封禁、网络连接问题或配置错误等。本文将详细介绍如…...

Sqoop 数据迁移

Sqoop 数据迁移 一、Sqoop 概述二、Sqoop 优势三、Sqoop 的架构与工作机制四、Sqoop Import 流程五、Sqoop Export 流程六、Sqoop 安装部署6.1 下载解压6.2 修改 Sqoop 配置文件6.3 配置 Sqoop 环境变量6.4 添加 MySQL 驱动包6.5 测试运行 Sqoop6.5.1 查看Sqoop命令语法6.5.2 测…...

【数据结构】排序算法系列——希尔排序(附源码+图解)

希尔排序 算法思想 希尔排序&#xff08;Shell Sort&#xff09;是一种改进的插入排序算法&#xff0c;希尔排序的创造者Donald Shell想出了这个极具创造力的改进。其时间复杂度取决于步长序列&#xff08;gap&#xff09;的选择。我们在插入排序中&#xff0c;会发现是对整体…...

c++(继承、模板进阶)

一、模板进阶 1、非类型模板参数 模板参数分类类型形参与非类型形参。 类型形参即&#xff1a;出现在模板参数列表中&#xff0c;跟在class或者typename之类的参数类型名称。 非类型形参&#xff0c;就是用一个常量作为类(函数)模板的一个参数&#xff0c;在类(函数)模板中…...

【机器学习】从零开始理解深度学习——揭开神经网络的神秘面纱

1. 引言 随着技术的飞速发展,人工智能(AI)已从学术研究的实验室走向现实应用的舞台,成为推动现代社会变革的核心动力之一。而在这一进程中,深度学习(Deep Learning)因其在大规模数据处理和复杂问题求解中的卓越表现,迅速崛起为人工智能的最前沿技术。深度学习的核心是…...

WebLogic 笔记汇总

WebLogic 笔记汇总 一、weblogic安装 1、创建用户和用户组 groupadd weblogicuseradd -g weblogic weblogic # 添加用户,并用-g参数来制定 web用户组passwd weblogic # passwd命令修改密码# 在文件末尾增加以下内容 cat >>/etc/security/limits.conf<<EOF web…...

leetcode:2710. 移除字符串中的尾随零(python3解法)

难度&#xff1a;简单 给你一个用字符串表示的正整数 num &#xff0c;请你以字符串形式返回不含尾随零的整数 num 。 示例 1&#xff1a; 输入&#xff1a;num "51230100" 输出&#xff1a;"512301" 解释&#xff1a;整数 "51230100" 有 2 个尾…...

Python GUI入门详解-学习篇

一、简介 GUI就是图形用户界面的意思&#xff0c;在Python中使用PyQt可以快速搭建自己的应用&#xff0c;自己的程序看上去就会更加高大上。 有时候使用 python 做自动化运维操作&#xff0c;开发一个简单的应用程序非常方便。程序写好&#xff0c;每次都要通过命令行运行 pyt…...

QT5实现https的post请求(QNetworkAccessManager、QNetworkRequest和QNetworkReply)

QT5实现https的post请求 前言一、一定要有sslErrors处理1、问题经过2、代码示例 二、要利用抓包工具1、问题经过2、wireshark的使用3、利用wireshark查看服务器地址4、利用wireshark查看自己构建的请求报文 三、返回数据只能读一次1、问题描述2、部分代码 总结 前言 QNetworkA…...

vscode 使用git bash,路径分隔符缺少问题

window使用bash --login -i 使用bash时候&#xff0c;在系统自带的terminal里面进入&#xff0c;测试conda可以正常输出&#xff0c;但是在vscode里面输入conda发现有问题 bash: C:\Users\marswennaconda3\Scripts: No such file or directory实际路径应该要为 C:\Users\mars…...

Python爬虫实战:研究MechanicalSoup库相关技术

一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…...

OpenLayers 可视化之热力图

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 热力图&#xff08;Heatmap&#xff09;又叫热点图&#xff0c;是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...

HTML 列表、表格、表单

1 列表标签 作用&#xff1a;布局内容排列整齐的区域 列表分类&#xff1a;无序列表、有序列表、定义列表。 例如&#xff1a; 1.1 无序列表 标签&#xff1a;ul 嵌套 li&#xff0c;ul是无序列表&#xff0c;li是列表条目。 注意事项&#xff1a; ul 标签里面只能包裹 li…...

STM32标准库-DMA直接存储器存取

文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA&#xff08;Direct Memory Access&#xff09;直接存储器存取 DMA可以提供外设…...

家政维修平台实战20:权限设计

目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系&#xff0c;主要是分成几个表&#xff0c;用户表我们是记录用户的基础信息&#xff0c;包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题&#xff0c;不同的角色&#xf…...

Java多线程实现之Callable接口深度解析

Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...

uniapp微信小程序视频实时流+pc端预览方案

方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度​WebSocket图片帧​定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐​RTMP推流​TRTC/即构SDK推流❌ 付费方案 &#xff08;部分有免费额度&#x…...

QT3D学习笔记——圆台、圆锥

类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体&#xff08;对象或容器&#xff09;QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质&#xff08;定义颜色、反光等&#xff09;QFirstPersonC…...

基于SpringBoot在线拍卖系统的设计和实现

摘 要 随着社会的发展&#xff0c;社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统&#xff0c;主要的模块包括管理员&#xff1b;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...