后端部署教程
严格按下面教程走完是可以将项目运行起来的,如果遇见无法解决的问题 扫码添咨询作者 (opens new window)
⭐ 表示需要特别注意的步骤
# 南粉福利🥇
特别说明:作者教程写的非常详细,严格按教程来一定可以跑起来!
给项目Star⭐了的同学可以 联系作者 (opens new window) 免费给你远程跑起来(前提:自己走过一遍教程,环境已准备OK)
# 部署效果
开源版演示地址:https://open.nansin.top (opens new window)(普通用户:自己注册就行;管理员:椿/123456)
商业版演示地址:https://bbs.nansin.top (opens new window)(普通用户:椿/123456;管理员:测试管理员/123456)
视频教程:https://www.bilibili.com/video/BV1ThYQzfEvR (opens new window)
文档教程:01 南生运营(南生系列基础系统)的设计理念 (opens new window)、 02 10分钟搞懂南生论坛 (opens new window)、 03 如何进行南生论坛管理维护? (opens new window)、 04 南生运营功能介绍 (opens new window)、 05 如何获取南生论坛设计文档? (opens new window)、 06 南生论坛日常迭代(开源计划) (opens new window)
# 环境准备
# 1. Java基础运行环境⭐
选其一:SpringBoot2依赖JDK8、SpringBoot3依赖JDK17
注意Windows x86是32位,x64是64位的,请根据自己的电脑配置选择相应的安装包
JDK官网下载地址:https://www.oracle.com/java/technologies/downloads (opens new window)
# SpringBoot3 - JDK17
master 分支:维护基于 Spring Boot 3.x 系列的最新代码(目前和 LTS-SpringBoot3 分支一致)
JDK17下载地址:下载 JDK17 (opens new window) Java 开发环境配置:https://www.runoob.com/java/java-environment-setup.html (opens new window)
# SpringBoot2 - JDK8
LTS-SpringBoot2 分支:维护基于 Spring Boot 2.x 系列(LTS长期支持版)的最新代码
JDK8下载地址:下载 JDK8 (opens new window) Java 开发环境配置:https://www.runoob.com/java/java-environment-setup.html (opens new window)
# 2. 安装Maven⭐
见南生论坛-安装Maven (opens new window)
# 3. 安装MySQL
MySQL 5.7+(推荐使用 8.0 稳定版)
将源码db文件夹下的open_bbs.sql导入你本地的MySQL数据库
# 创建数据库open_bbs
create database open_bbs;
# 进入open_bbs数据库
use open_bbs;
# 将open_bbs.sql导入open_bbs数据库
source 你的路径\open_bbs.sql;
当然,你用Navicat等工具导入也可以
# 4. 安装mongodb⭐
最近稳定版本即可
MongoDB下载地址:https://www.mongodb.com/try/download/community (opens new window)
通过Navicat导入数据
需要的数据:源码db文件夹下的
bbs_navicat_mongodb.js文件
创建数据库
open_bbs
运行脚本文件

# 5. 安装Nginx⭐
怎么安装自己谷歌/百度
Nginx下载地址:http://nginx.org/en/download.html (opens new window)
配置文件修改

进入你刚刚安装的nginx目录下的conf文件夹,打开
nginx.conf文件替换掉里面的所有内容(能搞明白的自己提取核心代码)#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; #gzip on; server { #前端访问接口 listen 80; gzip on; gzip_min_length 1k; gzip_comp_level 9; gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png; gzip_vary on; gzip_disable "MSIE [1-6]\."; root html; location / { root html; index index.html index.htm; try_files $uri $uri/ /index.html; } } server { listen 80; server_name bbs.localhost.com; gzip on; gzip_min_length 1k; gzip_comp_level 9; gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png; gzip_vary on; gzip_disable "MSIE [1-6]\."; charset utf-8; # 南生论坛ui location / { # 限制请求数据大小 client_max_body_size 50m; proxy_pass http://127.0.0.1:8082; # 转发时,携带本身的host头信息,而不是127.0.0.1 proxy_set_header Host $host:80; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Via "nginx"; } # 南生论坛service location /api { # 限制请求数据大小 client_max_body_size 50m; proxy_pass http://127.0.0.1:7010/api; # 转发时,携带本身的host头信息,而不是127.0.0.1 proxy_set_header Host $host:80; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Via "nginx"; } } }启动nginx

==浏览器访问 127.0.0.1 出现以下视图说明nginx启动成功了,否则需要排查下启动失败的原因==

# 6. 修改hosts⭐
去C:\Windows\System32\drivers\etc修改hosts文件,在最后一行追加如下配置
127.0.0.1 bbs.localhost.com

如果没有编辑hosts文件的权限?如下操作后再次尝试!

# pull源码并导入idea⭐
根据自己的需求 2选1 即可!
# Spring Boot3 - JDK17
# [GitHub] 拉取 Spring Boot3 分支(master / LTS-SpringBoot3)- JDK选择17
git clone -b master https://github.com/maliangnansheng/bbs-springboot
# --------- GitHub or 码云 ---------
# [码云] 拉取 Spring Boot3 分支(master / LTS-SpringBoot3)- JDK选择17
git clone -b master https://gitee.com/maliangnansheng/bbs-springboot
# Spring Boot2 - JDK8
# [GitHub] 拉取 Spring Boot2 分支(LTS-SpringBoot2)- JDK选择8
git clone -b LTS-SpringBoot2 https://github.com/maliangnansheng/bbs-springboot
# --------- GitHub or 码云 ---------
# [码云] 拉取 Spring Boot2 分支(LTS-SpringBoot2)- JDK选择8
git clone -b LTS-SpringBoot2 https://gitee.com/maliangnansheng/bbs-springboot
导入idea直接看图

效果

# 修改配置文件
严格按教程来, 没有要求改的配置不需要改,zk、redis等使用作者提供的远程服务,不要改成你本地的地址!!!
只需要改MySQL, mongodb配置默认无密码(如果有密码需要自己改一下配置,否则不用管!)

打开bbs-user-service模块下的配置文件
application.yml需要修改的配置我都加了注释:“需要改成你自己的”
(只需要修改MySQL连接相关配置,其它的不用改)
打开bbs-article-service模块下的配置文件
application.yml需要修改的配置我都加了注释:“需要改成你自己的”
(只需要修改MySQL连接相关配置,其它的不用改)
# 启动项目
三个位置都可以,随便选择一个即可
(为小白提供)
小白请注意: 需要将三个服务全部启启来:RestApplication、ArticleApplication、UserApplication

or

or

# 浏览器打开项目⭐
前提: nginx 和 前端项目 以及 后端项目都已经启动
1、访问地址:http://bbs.localhost.com/ (opens new window) 大功告成!
注:请使用域名(即:http://bbs.localhost.com/)访问,否则某些功能无法正常使用!⭐⭐⭐
南生论坛【管理员】账号:
椿/123456⭐⭐⭐
# FAQ⭐
可以正常打开页面,但登录等部分功能异常⭐ 问题原因: 你们使用的
localhost+端口或者ip+端口在访问 解决问题: 请使用域名(即:http://bbs.localhost.com/)访问,否则某些功能无法正常使用!参考浏览器打开项目settings.xml已经替换,还有部分依赖包没有下载下来⭐ 问题原因: idea对应的maven配置没有配成自己的(默认可能是idea自带的maven) 解决问题: 解决方案如下所示。参考安装Maven
其它一切正常,但
文章详情页面无故报错,且没有内容展示⭐ 问题原因: mongodb没有导入我提供的bbs_navicat_mongodb.js解决问题: 将源码db文件夹下的bbs_navicat_mongodb.js导入你本地的mongodb数据库。参考安装mongodb以上都没有问题,页面就是出不来⭐ 问题原因: 后端模块没有启动完 解决问题: 需要将
三个服务全部启启来:RestApplication、ArticleApplication、UserApplication。参考启动项目其它问题⭐ 请 扫码添加作者 (opens new window) 进行免费咨询
# 我要部署到Linux
南生论坛(本系统)- Linux部署教程 (opens new window)
# 有偿服务⭐
全方位一体式一对一远程手把手教学,有效期一年(365天)
需要作者一对一讲解和分析代码的同学需要有偿(499¥-挣点购买云服务器的费用 😜)
# 我要商用⭐
你如果觉得这个项目非常契合自己(公司)的发展需求,可以获取商用授权 (opens new window)