RHCSA做项目:基于LAMP环境搭建Web应用(Discuz!论坛)的基础环境与部署流程
文章目录
- 1、配置本地仓库
- 1.1 创建本地仓库配置文件
- 1.2 挂载光盘文件
- 2、安装软件组件
- 2.1 php环境
- 2.2 httpd服务
- 2.3 mariadb数据库
- 3、启动Web与数据库服务
- 3.1 启动httpd服务
- 3.2 启动mariadb数据库
- 4、配置数据库
- 4.1 登录数据库
- 4.2 查看现有数据库
- 4.3 新建论坛专用数据库
- 4.4 设置数据库root密码
- 4.5 选择数据库
- 5、网页设置
- 5.1 上传Discuz!代码包
- 5.2 解压代码包
- 6、论坛页面初始化
- 6.1 访问安装向导
- 6.2 环境检测与配置
- 7.访问论坛站点
1、配置本地仓库
1.1 创建本地仓库配置文件
需要/etc/yum.repos.d这个目录下新建仓库文件(后缀名必须为.repo),比如新建仓库文件名称为yum.repo
[root@localhost ~]# cd /etc/yum.repos.d/ #切换目录到/etc/yum.repos.d/
[root@localhost yum.repos.d]# vim yum.repo #新建 yum.repo仓库文件,并用vim编译器编辑
进入vim编辑器命令模式后,按“i”进入插入模式,即可输入编译内容。
命令模式

输入i即可进入插入模式可编辑状态

配置文件(eg:vim yum.repo)编译内容如下。注意name需要与上面[]里面的一致
[baseos]
name=baseos
baseurl=/mnt/BaseOS
gpgcheck=0[appstream]
name=appstream
baseurl=/mnt/AppStream
gpgcheck=0
按“Esc“键,然后输入”:wq”进行保存并退出。
1.2 挂载光盘文件
将 /dev/sr0 光盘文件挂载到 /mnt 文件夹下
输入以下命令
mount /dev/sr0 /mnt
- 第一次挂载会提示只读,不影响后续操作。
- 若已挂载过,则会提示already mounted

挂载完后用 ls 命令就能看到 /mnt 下有AppStream 和BaseOS文件
[root@localhost yum.repos.d]# ls /mnt
AppStream EULA images RPM-GPG-KEY-redhat-beta
BaseOS extra_files.json isolinux RPM-GPG-KEY-redhat-release
EFI GPL media.repo
2、安装软件组件
需安装php环境、httpd服务、mariadb数据库
2.1 php环境
通过命令以下命令获取所需要的php服务。
dnf install -y php*
等待…
显示Complete!获取成功。

若已安装,则显示Nothing to do.

2.2 httpd服务
同理,输入以下命令,即可获取httpd服务
dnf install -y httpd
等待…
显示Complete!获取成功。

若已安装,则显示already installed

2.3 mariadb数据库
同理,输入以下命令,即可获取mariadb数据库
dnf install -y mariadb mariadb-server
等待…
显示Complete!获取成功。

若已安装,则显示Nothing to do.

3、启动Web与数据库服务
3.1 启动httpd服务
启动服务前需查看服务的状态
输入以下命令查看httpd状态。
systemctl status httpd
这里是inactive状态,未启动(未激活)。需先启动httpd服务(若未开启则后面的测试界面无论是否关闭防火墙都无法进入)

用命令激活httpd服务
systemctl start httpd
获取服务端口(该命令是为避免运行了却没提供服务的情况)
etstat -lntup | grep httpd

成功监听!
使用命令再次查看httpd服务状态

已激活!
启动服务后,打开浏览器,输入http://自己的ip(ip a)
输入之后为如下测试界面

“无法访问此网站”问题解决方法
若出现无法访问此网站问题

- 方法一:关闭防火墙
先查看防火墙状态
systemctl status firewalld.service

通过如下命令关闭防火墙
systemctl stop firewalld.service
再查看防火墙状态

防火墙已关闭!
临时关闭SELinux(安全增强型Linux)
setenforce 0
刷新浏览器。
后续若想打开防火墙,可输入:
systemctl start firewalld.service
- 方法二:将httpd服务添加到防火墙中
输入如下命令:
永久开放http服务
firewall-cmd --permanent --add-service=http
永久开放80/tcpduankou
firewall-cmd --permanent --add-port=80/tcp
重新加载防火墙
firewall-cmd --reload
临时关闭SELinux(安全增强型Linux)
setenforce 0

完成!刷新浏览器即可
- 小拓展
提示如下,则你的防火墙处于关闭状态(若想测试此方法,可输入systemctl start firewalld.service 打开防火墙)

3.2 启动mariadb数据库
输入以下命令启动mariadb数据库。
systemctl start mariadb.service
4、配置数据库
4.1 登录数据库
-uroot指以root用户进入 -p是passwd密码
mysql -uroot -p
输入密码部分:由于初始数据库没有密码,直接Enter回车即可。

4.2 查看现有数据库
为防止后续创建出现重复,需先查看数据库。
#注:数据库相关命令必须在结尾加“;”
show databases;

输出了当前数据库实例中存在的系统数据库列表,包含3个数据库:
- information_schema
是MySQL/MariaDB的系统数据库,存储数据库元数据(如表结构、列信息、权限等),主要用于查询数据库自身的结构信息。 - mysql
核心系统数据库,存储用户账号、权限配置、数据库参数等关键系统信息,是数据库权限管理和系统配置的基础。 - performance_schema
用于监控数据库运行时的性能指标(如进程状态、锁信息、资源消耗等),帮助分析数据库性能问题。
这些都是MariaDB默认创建的系统数据库,并非用户自定义的业务数据库。
4.3 新建论坛专用数据库
创建一个名为“luntan”的数据库66
create database luntan;

再次查看数据库看是否有刚才创建的数据库

创建成功!
4.4 设置数据库root密码
初始数据库没有密码,我们可以创建一个密码。
alter user 'root'@'localhost' identified by ' '; #注: alter 表示修改,可能是表,也可能是数据库user 表示用户表'root'@'localhost' 表示root用户在localhost域下的操作identified by 后面要跟上密码' ' 请在‘ ’内添加自己设置的密码

退出数据库编辑
exit

验证用户名密码是否设置成功
再次进入数据库

直接Enter回车报错
输入我们设置的密码则进入成功!
4.5 选择数据库
选择切换到luntan数据库中
use luntan;
查看数据库中的表信息
show tables;
退出数据库

5、网页设置
5.1 上传Discuz!代码包
下载压缩文件
点击此处并下载Discuz_X3.5_SC_UTF8_20250205.zip
打开Xftp

将Discuz_X3.5_SC_UTF8_20250205.zip上传到/var/www/html目录下

在Xshell中切换路径

通过 ll 命令可以看到压缩包上传成功

5.2 解压代码包
输入命令,对压缩文件进行解压缩
unzip Discuz_X3.5_SC_UTF8_20250205.zip

通过 ll 命令可以看到该压缩文件解压出来的内容

切换到upload目录下
cd upload/

通过ll查看内容

可以看到有很多php文件,这也是我们之前安装php环境的原因。
6、论坛页面初始化
6.1 访问安装向导
在之前打开的浏览器测试界面网址后加上“/upload”。

进入该界面

注:如果这个界面中显示的还是php文件,需要安装php,并且重启httpd服务
6.2 环境检测与配置
点击“同意”按钮,若出现以下界面:

此时我们需修改权限,递归修改将所有文件权限改成可读写。
chmod -R 777 data/ uc_client/ uc_server/ config/
然后刷新浏览器

注:若权限还是没改,可再输入:
临时关闭SELinux(安全增强型Linux)
setenforce 0
激活httpd服务
systemctl start httpd
然后重新刷新。
点击下一步。

默认选第二个就行,点击下一步。

修改数据库名、输入设置密码


点击下一步
等待安装完成…
完成安装后界面如下:

7.访问论坛站点
点击“直接访问站点”即可访问论坛

