马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
一、实行配景
论坛是互联网的一种应用服务模式。通过这种服务,互联网用户可以在上面欣赏到其他用户在网站发表的各种主题、 文章、资讯信息、题目互换等具有各种体现情势的笔墨。而且用户可以在上面针对某个具体的内容即时地发表自己的 回复、看法、议论等,大概直接发表自己的文章、题目或别的内容。由于论坛的这种特点,使得举世的用户都可以随 时随地举行互换,从而真正做到举世信息的互换。论坛具有多种体现情势,各网站可以按照自己的服务特点操持出适 合自身的论坛情势。比方,各类论坛、在线问答、各种供求信息、网上订购等都可以是论坛的体现情势。论坛现在在 互联网上得到非常广泛的应用,而且反应非常活泼。由于论坛可以使网上信息互换变得非常方便、广泛、及时,因而 对于加深网站的服务深度、进步网站的着名度、拓展网站的互换范围、激活网站的人气都有不小的作用,因此在互联 网的服务中,论坛将是一个告急的内容。
在 Internet飞速发展的二十一世纪的本日,互联网成为人们快速获取、发布和转达互换信息的告急渠道。它在人们政 治、经济、生存、学习等各个方面发挥着告急的作用。随着Internet的飞速发展,现在,国表里大部门构造、学校、 公司、企业都已经或正在创建自己的论坛。由此可见门生校园论在Internet应用上的职位显而易见,它已成为学校及 别的单位信息化创建中倍受人们的器重告急构成部门。
二、实行目标
本实行旨在资助门生明白项目标实行流程,可以或许将所学知识点串联起来形成一个知识体系。通过本实行,渴望同砚们 可以或许到达如下目标:
1. 深入明白设置堆栈的告急性
2. 把握软件安装步调,软件服务管理
3. 把握文件目次管理、用户权限管理、网络设置干系下令
4. 把握防火墙设置和管理
5. 把握对数据库的安装、设置和操纵
6. 学会通过页面引导来对项目举行设置和管理
三、实行环境
1. 宿主机操纵体系:Windows 11 23H2 专业版
2. 捏造机软件:VMware Workstation 17 Pro
3. 捏造机操纵体系:Redhat-9.2
4. 长途毗连工具:XShell 7.x
5. 论坛步调运行环境:php-8.0.27-1.el9_1.x86_64
6. HTTP服务:httpd-2.4.53-11.el9_2.4.x86_64
7. 数据库:mariadb-3:10.5.16-2.el9_0.x86_64
8. 论坛源码:Discuz_X3.5_SC_UTF8
四、实行步调
论坛服务实行搭建步调如下:
1. 设置本地堆栈
起首在 /etc/yum.repo.d/ 目次下新建一个堆栈文件,如:yum.repo。文件设置内容如下:- [root@localhost yum.repos.d]# vim yum.repo
- # 添加如下内容
- [baseos]
- name=baseos
- baseurl=/mnt/BaseOS
- gpgcheck=0
- [appstream]
- name=appstream
- baseurl=/mnt/AppStream
- gpgcheck=0
复制代码 然后将光盘挂载到 /mnt 目次下:- [root@localhost yum.repos.d]# mount /dev/sr0 /mnt
- mount: /mnt: WARNING: source write-protected, mounted read-only.
复制代码 末了验证是否挂载乐成:- [root@localhost yum.repos.d]# ls /mnt
- AppStream EFI extra_files.json images media.repo RPM-GPG-KEY
- redhat-release
- BaseOS EULA GPL isolinux RPM-GPG-KEY-redhat-beta
复制代码 2. 安装PHP运行环境
论坛是以 PHP 语言开辟的,必要运行在 PHP 环境下。实行如下下令安装 PHP 语言运行环境:- [root@localhost yum.repos.d]# dnf install -y php*
- ..........
- Installed:
- apr-1.7.0-11.el9.x86_64 apr-util-1.6.1-20.el9.x86_64
- apr-util-bdb-1.6.1-20.el9.x86_64 apr-util-openssl-1.6.1
- 20.el9.x86_64
- autoconf-2.69-38.el9.noarch automake-1.16.2-6.el9.noarch
- cmake-filesystem-3.20.2-8.el9.x86_64 gcc-11.3.1-4.3.el9.x86_64
- gcc-c++-11.3.1-4.3.el9.x86_64 glibc-devel-2.34
- 60.el9.x86_64
- glibc-headers-2.34-60.el9.x86_64 httpd-2.4.53
- 11.el9_2.4.x86_64
- httpd-core-2.4.53-11.el9_2.4.x86_64 httpd-filesystem-2.4.53
- 11.el9_2.4.noarch
- httpd-tools-2.4.53-11.el9_2.4.x86_64 kernel-headers-5.14.0
- 284.11.1.el9_2.x86_64
- ..........
- php-process-8.0.27-1.el9_1.x86_64 php-snmp-8.0.27
- 1.el9_1.x86_64
- php-soap-8.0.27-1.el9_1.x86_64 php-xml-8.0.27
- 1.el9_1.x86_64
- redhat-logos-httpd-90.4-1.el9.noarch rrdtool-1.7.2-21.el9.x86_64
- tokyocabinet-1.4.48-19.el9.x86_64 unixODBC-2.3.9-4.el9.x86_64
- xz-devel-5.2.5-8.el9_0.x86_64 zlib-devel-1.2.11
- 39.el9.x86_64
- Complete!
复制代码 3. 安装HTTPD服务
由于论坛是通过欣赏器访问的,而欣赏器访问服务器是通过 HTTP 协议访问的,而处理处罚 HTTP 协议是通过 HTTPD 服 务实现的,因此必要安装 HTTPD 服务。实行如下下令来安装 HTTPD 服务:- [root@localhost yum.repos.d]# dnf install -y httpd
- Updating Subscription Management repositories.
- Unable to read consumer identity
- This system is not registered with an entitlement server. You can use subscription
- manager to register.
- Last metadata expiration check: 0:03:30 ago on Mon 25 Mar 2024 02:37:41 PM CST.
- Package httpd-2.4.53-11.el9_2.4.x86_64 is already installed.
- Dependencies resolved.
- Nothing to do.
- Complete!
复制代码 4. 安装数据库
论坛的数据是存在数据库中的,在 Linux 中保举使用 Mariadb 数据库,它与 MySQL 数据库是同出一源的。安装数 据库时必要安装客户端和服务端,实行如下下令来安装:- [root@localhost yum.repos.d]# dnf install -y mariadb mariadb-server
- ......
- Installed:
- mariadb-3:10.5.16-2.el9_0.x86_64 mariadb-backup
- 3:10.5.16-2.el9_0.x86_64
- mariadb-common-3:10.5.16-2.el9_0.x86_64 mariadb-errmsg
- 3:10.5.16-2.el9_0.x86_64
- mariadb-gssapi-server-3:10.5.16-2.el9_0.x86_64 mariadb-server
- 3:10.5.16-2.el9_0.x86_64
- mariadb-server-utils-3:10.5.16-2.el9_0.x86_64 mysql-selinux-1.0.5
- 1.el9_0.noarch
- perl-DBD-MariaDB-1.21-16.el9_0.x86_64 perl-DBI-1.643
- 9.el9.x86_64
- perl-Math-BigInt-1:1.9998.18-460.el9.noarch perl-Math-Complex
- 1.59-480.el9.noarch
- perl-Sys-Hostname-1.23-480.el9.x86_64
- Complete!
复制代码 5. 启动HTTPD服务
安装好以上干系软件后,我们就可以启动 HTTPD 服务了,实行如下下令来启动:- [root@localhost yum.repos.d]# systemctl start httpd
复制代码 实行后,我们可以通过如下下令来检察服务是否乐成启动:- [root@localhost yum.repos.d]# netstat -lntup | grep httpd
- tcp6 0 0 :::80 :::* LISTEN
- 39790/httpd
复制代码 如果能看到如上信息,表现 HTTPD 服务已经乐成启动,并监听在 80 端口上。
6. 设置防火墙
由于 Redhat 体系是有防火墙安全服务的,而 HTTP 服务要想客户端可以或许访问,必要将其添加到防火墙列表中,同时 还必要将 80 端标语也添加到防火墙列表中。可实行如下下令来检察现在的 HTTP 服务和 80 端口是否在防火墙列表中。- [root@localhost yum.repos.d]# firewall-cmd --list-all
- public (active)
- target: default
- icmp-block-inversion: no
- interfaces: ens160
- sources:
- services: cockpit dhcpv6-client ssh
- ports:
- protocols:
- forward: yes
- masquerade: no
- forward-ports:
- source-ports:
- icmp-blocks:
- rich rules:
复制代码 可以发现,并没有在防火墙列表中,我们必要实行如下下令来将 http 服务和 80 端口添加到防火墙列表中。- # 将 http 服务添加到防火墙中
- [root@localhost yum.repos.d]# firewall-cmd --permanent --add-service=http
- success
- # 将 80 端口添加到防火墙中
- [root@localhost yum.repos.d]# firewall-cmd --permanent --add-port=80/tcp
- success
- # 重新加载防火墙
- [root@localhost yum.repos.d]# firewall-cmd --reload
- success
复制代码 再次实行如下下令来检察防火墙列表信息:- [root@localhost yum.repos.d]# firewall-cmd --list-all
- public (active)
- target: default
- icmp-block-inversion: no
- interfaces: ens160
- sources:
- services: cockpit dhcpv6-client http ssh
- ports: 80/tcp
- protocols:
- forward: yes
- masquerade: no
- forward-ports:
- source-ports:
- icmp-blocks:
- rich rules:
复制代码 可以发现,http 服务和 80 端口已经乐成添加到了防火墙列表中。 为了防止客户端还大概无法访问服务,我们可以将 selinux 服务关闭。实行如下下令来关闭:- [root@localhost yum.repos.d]# setenforce 0
复制代码 7. 启动数据库
接下来我们启动 Mariadb 数据库,实行如下下令:- [root@localhost yum.repos.d]# systemctl start mariadb.service
复制代码 8. 设置数据库
当数据库服务启动后,我们必要对其举行设置。
起首实行如下的下令来进入到数据库中:- [root@localhost yum.repos.d]# mysql -uroot -p
- Enter password: # 在此处直接回车即可
- Welcome to the MariaDB monitor. Commands end with ; or \g.
- Your MariaDB connection id is 3
- Server version: 10.5.16-MariaDB MariaDB Server
- Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
- Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
- MariaDB [(none)]>
复制代码 阐明:新安装的数据库,初始暗码为空。因此在输入暗码提示处直接回车即可登录乐成。
然后创建一个数据库,名称我们取名为 luntan- # 查看目前的所有数据库信息
- MariaDB [(none)]> show databases;
- +--------------------+
- | Database |
- +--------------------+
- | information_schema |
- | mysql |
- | performance_schema |
- +--------------------+
- 3 rows in set (0.000 sec)
- # 创建luntan数据库
- MariaDB [(none)]> create database luntan;
- Query OK, 1 row affected (0.000 sec)
- # 再次查看确认
- MariaDB [(none)]> show databases;
- +--------------------+
- | Database |
- +--------------------+
- | information_schema |
- | luntan |
- | mysql |
- | performance_schema |
- +--------------------+
- 4 rows in set (0.000 sec)
复制代码 接下来我们修改数据库的 root 用户的暗码:- MariaDB [(none)]> alter user 'root'@'localhost' identified by 'redhat123';
- Query OK, 0 rows affected (0.001 sec)
复制代码 实行完上面的修改暗码语句后,我们实行 exit 下令来退出数据库,然后重新通过用户名和暗码来登录数据库- [root@localhost yum.repos.d]# mysql -uroot -predhat123
- Welcome to the MariaDB monitor. Commands end with ; or \g.
- Your MariaDB connection id is 4
- Server version: 10.5.16-MariaDB MariaDB Server
- Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
- Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
- MariaDB [(none)]>
复制代码 要选择数据库:- # 选择数据库
- MariaDB [(none)]> use luntan;
- Database changed
- # 查看数据库下所有表信息
- MariaDB [luntan]> show tables;
- Empty set (0.000 sec)
复制代码 9. 安装论坛步调
有了上面的全部环境后,我们就可以通过上传软件将论坛源步调(Discuz_X3.5_SC_UTF8_20230520.zip)文件上传 到 Redhat 体系的 /var/www/html/ 目次下。- [root@localhost html]# ll
- total 11500-rw-r--r--. 1 root root 11775903 Feb 23 16:02 Discuz_X3.5_SC_UTF8_20230520.zip
复制代码 然后进入到这个目次下:- [root@localhost yum.repos.d]# cd /var/www/html/
- [root@localhost html]#
复制代码 接着在这个目次下实行如下下令来解压这个文件:复制代码 解压完成后,检察解压的目次:- [root@localhost html]# ll
- total 11624-rw-r--r--. 1 root root 11775903 Mar 25 14:56 Discuz_X3.5_SC_UTF8_20230520.zip-rw-r--r--. 1 root root 8181 May 20 2023 LICENSE-rw-r--r--. 1 root root 33294 Dec 21 2022 qqqun.png
- drwxr-xr-x. 2 root root 124 May 20 2023 readme-rw-r--r--. 1 root root 70226 Mar 16 2023 readme.html
- drwxr-xr-x. 12 root root 4096 May 20 2023 upload-rw-r--r--. 1 root root 140 Feb 12 2023 utility.html
复制代码 末了我们进入到 upload 目次- [root@localhost html]# cd upload/
- [root@localhost upload]#
复制代码 该目次下全部文件列表如下:- [root@localhost upload]# ll
- total 72
- -rw-r--r--. 1 root root 2869 May 20 2023 admin.php
- drwxr-xr-x. 10 root root 149 May 20 2023 api
- -rw-r--r--. 1 root root 727 May 20 2023 api.php
- drwxr-xr-x. 2 root root 23 May 20 2023 archiver
- drwxr-xr-x. 2 root root 90 May 20 2023 config
- -rw-r--r--. 1 root root 1040 May 20 2023 connect.php
- -rw-r--r--. 1 root root 106 May 20 2023 crossdomain.xml
- drwxr-xr-x. 12 root root 178 May 20 2023 data
- -rw-r--r--. 1 root root 5558 May 20 2023 favicon.ico
- -rw-r--r--. 1 root root 2357 May 20 2023 forum.php
- -rw-r--r--. 1 root root 906 May 20 2023 group.php
- -rw-r--r--. 1 root root 1325 May 20 2023 home.php
- -rw-r--r--. 1 root root 6912 May 20 2023 index.php
- drwxr-xr-x. 5 root root 64 May 20 2023 install
- -rw-r--r--. 1 root root 998 May 20 2023 member.php
- -rw-r--r--. 1 root root 2410 May 20 2023 misc.php
- -rw-r--r--. 1 root root 1790 May 20 2023 plugin.php
- -rw-r--r--. 1 root root 1086 May 20 2023 portal.php
- -rw-r--r--. 1 root root 639 May 20 2023 robots.txt
- -rw-r--r--. 1 root root 1755 May 20 2023 search.php
- drwxr-xr-x. 10 root root 168 May 20 2023 source
- drwxr-xr-x. 7 root root 86 May 20 2023 static
- drwxr-xr-x. 3 root root 38 May 20 2023 template
- drwxr-xr-x. 8 root root 146 May 20 2023 uc_client
- drwxr-xr-x. 13 root root 4096 May 20 2023 uc_server
复制代码 10. 设置论坛
打开欣赏器并在地点栏中输入:http://192.168.72.128/upload,就会看到如下界面。
留意:请输入你自己服务器的 IP 地点。
点击“同意”按钮来继承答应协议并进入到下一个设置界面。
从页面中可以发现,很多文件和目次的当前状态都是不可写,因此我们必要实行如下下令来为它们设置可操纵权限。- [root@localhost upload]# chmod -R 777 data/ uc_client/ uc_server/ config/
复制代码 实行完下令后再次革新页面,可以发现全部的告诫信息都没有了。如下图所示:
点击“下一步”按钮进入到下一个设置界面:
在这个界面中接纳默认选项即可,然后点击“下一步”按钮。
在这个设置页面中,我们必要填写服务器的地点、数据库名、数据库用户名、数据库暗码、管理员暗码等信息。前四 个信息我们在第 8 步设置数据库中设置了干系的信息:数据库名为 luntan,数据库用户名为 root,数据库暗码为 redhat123。
此处我将管理员暗码也设置为redhat123 设置好相应数据库信息后,点击“下一步”按钮后就会开始安装,安装好后的界面如下图所示:
我们可以选择“进入管理背景”,也可以选择“安装插件模板”,还可以选择“直接访问站点”。此处我们选择“直接访问站 点”来进入论坛步调。
五、实行结论
1. 本实行的实行必要具备独立设置堆栈和目次挂载本事。
2. 由于涉及到文件权限管理,因此必要对权限管理干系下令有肯定相识。
3. 必要有肯定的数据库的根本操纵本事。
4. 必要有肯定的安全管理本事。
5. 通过本实行可以或许将干系知道串联起来。
|