本科项目实践2--手把手教您搭建论坛

一、项目背景

        在互联网快速发展的当下,线上交流平台的需求日益增长。论坛作为一种经典的交流方式,能够汇聚不同领域、不同兴趣的人群,为大家提供一个分享观点、交流经验、解决问题的空间。然而,现有的一些论坛存在功能陈旧、用户体验不佳等问题。为了满足用户对高效、便捷、个性化交流平台的需求,我们决定搭建一个全新的论坛。

二、项目目的

        本项目旨在搭建一个功能丰富、界面友好、稳定可靠的论坛平台。通过该论坛,用户可以自由发布帖子、参与讨论、分享资源。我们希望为用户营造一个活跃、和谐的交流氛围,促进知识的传播与共享。同时,提升自身在网站开发、数据库管理、服务器搭建等方面的实践能力,为未来的职业发展积累宝贵经验。

三、项目关键内容介绍

3.1 Nginx

        Nginx是一款开源的高性能Web服务器、反向代理及电子邮件(IMAP/POP3)代理服务器。它轻量级、低内存占用、并发处理能力强,能高效处理静态资源,还可对动态请求做反向代理、负载均衡,被广泛应用于各类网站与应用。 

3.2 mariadb

  • Mariadb是一种数据库软件

  • 由开源社区维护,是MySQL的分支,几乎完全兼容MySQL,两者性能基本一致,操作十分相似

3.3 PHP

  • PHP(Hypertxt Preprocessor,超文本预处理器)是一种通用的开源脚本语言,发明于 1995年,它吸取了 C 语言、Java 语言及 Perl 语言的很多优点,具有开源、免费、快捷、跨平台性强、效率高等优良特性,是目前 Web 开发领域最常用的语言之一(后端开发)

  • Discuz默认使用PHP编写

3.4 Discuz

四、项目内容和过程

4.1 关闭防火墙的开机自动启动

[root@localhost ~]# systemctl  disable  firewalld   --now

4.2 关闭selinux

[root@localhost ~]# setenforce 0

也可以做一个永久修改,先进入/etc/selinux/config文件里面,修改参数,把参数改为permissive:

4.3 修改主机名

[root@localhost ~]# hostnamectl set-hostname yuanandzhen
[root@yuanandzhen ~]
# 重启使新主机名生效
[root@yuanandzhen ~]# reboot

4.4 测试网络连通性

4.4.1 linux访问百度


[root@yuanandzhen ~]# ping -c 2  www.baidu.com
PING www.a.shifen.com (183.2.172.177) 56(84) 比特的数据。
64 比特,来自 183.2.172.177 (183.2.172.177): icmp_seq=1 ttl=128 时间=35.6 毫秒
64 比特,来自 183.2.172.177 (183.2.172.177): icmp_seq=2 ttl=128 时间=36.9 毫秒

--- www.a.shifen.com ping 统计 ---
已发送 2 个包, 已接收 2 个包, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 35.642/36.294/36.947/0.652 ms

4.4.2  windows ping linux


打开cmd Ping虚拟机的ip地址
C:\Users\13172>ping 192.168.247.131
正在 Ping 192.168.247.131 具有 32 字节的数据:
来自 192.168.247.131 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.247.131 的回复: 字节=32 时间<1ms TTL=64

4.5 配置yum源

下面咱们以配置本地yum源为例,为大家展示如何配置:

         本地 yum 源是指将原本从网络远程仓库获取软件包的 yum 配置,改为从本地的存储路径获取。本地路径可以是光盘、硬盘分区等,这样即便网络不佳或无网络,也能安装、更新软件。

4.5.1 将本地光盘挂载至本地目录/media下

       

# 1 将本地光盘挂载至本地目录/media下
[root@yuanandzhen ~]# mount /dev/sr0 /media
mount: /media: WARNING: source write-protected, mounted read-only.
[root@yuanandzhen ~]# cd /media/ 
[root@yuanandzhen media]# ls ##可以看见有一个仓库
AppStream  EULA              images      RPM-GPG-KEY-redhat-beta
BaseOS     extra_files.json  isolinux    RPM-GPG-KEY-redhat-release
EFI        GPL               media.repo

# 移动到yum源配置文件路径
[root@yuanandzhen media]# cd /etc/yum.repos.d
[root@yuanandzhen yum.repos.d]# ls
redhat.repo
# 备份已存在yum源配置文件,使其失效
[root@yuanandzhen yum.repos.d]# mv redhat.repo redhat.repo.back
[root@yuanandzhen yum.repos.d]# ls
redhat.repo.back

4.5.2 新建本地yum源配置文件

[root@yuanandzhen yum.repos.d]# vim dvd.repo
[BaseOS]
name=BaseOS
baseurl=file:///media/BaseOS (从本地文件访问,不是从网上的超文本传输协议中访问)
gpgcheck=0  ( 用于 yum 配置。开启此设置后,yum 在安装软件包时,不会对软件包进行 GPG 签名验证,可加快安装速度,但会降低安全性。)

[Appstream]
name=Appstream
baseurl=file:///media/AppStream
gpgcheck=0

4.5.3 重建缓存

[root@yuanandzhen yum.repos.d]# yum makecache 

[root@yuanandzhen yum.repos.d]# yum repolist
 (查看已经启用的软件仓库)

4.6 安装nginx、mariadb-server、php软件

[root@yuanandzhen ~]# yum  install nginx  mariadb-server php -y
[root@yuanandzhen ~]# yum install  php-mysqlnd  -y

4.7 开启并运行nginx和mariadb服务

[root@yuanandzhen ~]# systemctl start nginx
[root@yuanandzhen ~]# systemctl  enable  nginx

[root@yuanandzhen ~]# systemctl  enable  --now  mariadb

4.8 用xftp软件从windows上传discuz包到linux并解压

[root@yuanandzhen ~]# unzip  /root/Discuz_X3.5_SC_UTF8_20250205.zip -d /usr/share/nginx/html/

4.9 设置权限

[root@yuanandzhen ~]# chmod -R  777   /usr/share/nginx/html/upload/{config,data,uc*}

4.10 初始化数据库

[root@yuanandzhen ~]# mysql_secure_installation

4.11 登录进数据库并创建名字为kungeluntan的数据库

[root@yuanandzhen ~]# mysql -u  root -p
 Enter password: 
 
 MariaDB [(none)]> create  database   kungeluntan;

MariaDB [(none)]> quit
Bye

4.12 在浏览器输入你的linux主机的ip地址/upload

会弹出下面的页面:

4.13 注册登录设置

4.14 完成后的页面

五、项目总结

        本次项目以 Nginx、MariaDB、PHP 和 Discuz 搭建论坛。在做项目的过程中,我掌握了 Nginx 配置实现高效服务,用 MariaDB 完成数据存储管理,借助 PHP 支持动态交互,结合 Discuz 快速构建论坛框架。成功实现用户注册登录、发帖回帖、板块管理等核心功能。此次实践提升了我的技术能力和问题解决能力,为后续学习和工作积累宝贵经验。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值