一、创建一台服务器

1.打开阿里云官网


链接:https://www.aliyun.com


2.注册/登录账号


3.搜索云服务器

点击云服务器ECS


4.云服务器选择


这里有两个选项,购买和免费试用,新用户可以免费试用三个月,我这里选择的是免费使用

跳转后可以看到这有免费试用版,点击立即试用(右边还有1个也是免费的,但是好像是小程序相关的,感兴趣可以点击试用教程看看)

5.云服务器配置


自行选择合适的配置

下面预装应用这里可以不选


点击立即试用


6.查看云服务器


回到主页,点击控制台

再点这个“菜单(三条杠)”

点击云服务器ECS

服务器购买后默认启动,点击实例查看详细信息

如果忘记密码可以点击重置密码,也可以先点击远程连接体验一下

点击远程连接后,点立即登录

输入用户名默认(root)和自定义密码


进入到如下界面就表示服务器创建成功

7.更换操作系统(可选)

很多人第一次登陆时系统可能默认为Windows操作系统导致登陆用户名为Administrator,这时候需要点击切换操作系统为Linux方便进行后续部署

二、使用Xshell远程连接服务器

1.新建会话

填写名称和主机IP,这里的主机IP就是前面服务器的公网IP

再次填写用户名和密码

2.连接成功

三、云服务器安装MySQL

1.创建mysql文件夹

先在根目录下创建mysql文件夹,用于存放下载的mysql

[root@iZ2zegw3mkls9olizhdg74Z ~]# cd ..
[root@iZ2zegw3mkls9olizhdg74Z /]# ls
bin   dev  home  lib64       media  opt   root  sbin  sys  usr
boot  etc  lib   lost+found  mnt    proc  run   srv   tmp  var
[root@iZ2zegw3mkls9olizhdg74Z /]# mkdir mysql
[root@iZ2zegw3mkls9olizhdg74Z /]# cd mysql/
[root@iZ2zegw3mkls9olizhdg74Z mysql]# wget 'https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm'

2.下载yum源

rpm -Uvh mysql57-community-release-el7-11.noarch.rpm
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

3.安装mysql

yum install -y mysql-server

4.启动mysql

systemctl start mysqld
systemctl status mysqld

5.重置密码

mysql在初始化的时候会生成一个自定义的密码,找到这个密码,在登录的时候输入

grep 'temporary password' /var/log/mysqld.log 

记下这里的密码

登录mysql数据库

mysql -u root -p

然后数据刚刚的密码,注意这里输入密码是不显示的

通过以下命令设置密码的验证强度等级,设置 validate_password_policy 的全局参数为 LOW,并将密码长度设置为你想要的长度:

set global validate_password_policy=LOW;
set global validate_password_length=6;

执行命令修改密码和登陆权限

UPDATE mysql.user SET authentication_string=PASSWORD('123456') WHERE User='root';
use mysql;
UPDATE user SET host = '%' WHERE user='root';

要是报错了就换成

ALTER USER USER() IDENTIFIED BY '123456';
use mysql;
UPDATE user SET host = '%' WHERE user='root';

然后刷新MySQL的系统权限命令

FLUSH PRIVILEGES; 

6.防火墙安全组

7.Navicat连接云服务器mysql

使用mysql的可视化工具Navicat连接云服务器上的mysql数据库

新建连接

8.导入数据

导入自己需要的数据即可

四、安装JDK

# 1. 查看 yum 源中可安装的 JDK 8 版本
yum search java | grep jdk8
# 2. 安装 OpenJDK 8(开发环境,带devel后缀,包含javac编译命令)
yum install -y java-1.8.0-openjdk-devel
# 3. 验证安装
java -version
javac -version

五、安装Redis

# 1. 安装 EPEL 源(Redis 不在 CentOS 默认 yum 源中)
yum install -y epel-release
# 2. 安装 Redis
yum install -y redis
# 3. 启动 Redis 并设置开机自启
systemctl start redis
systemctl enable redis
# 4. 验证安装(连接客户端)
redis-cli
# 输入 ping 验证,返回 PONG 即为成功
127.0.0.1:6379> ping
PONG

注意这里也要把6379端口放入防火墙安全组哦!!!!

六、安装nginx

1.克隆Nginx官方Git仓

# 克隆Nginx官方Git仓库(正确地址)
git clone https://github.com/nginx/nginx.git /usr/local/src/nginx-git

2.编译安装 Nginx

# 1. 安装编译依赖
yum install -y gcc gcc-c++ make pcre pcre-devel zlib zlib-devel openssl openssl-devel

# 2. 进入Git克隆的Nginx源码目录
cd /usr/local/src/nginx-git

# 3. 配置编译参数
./auto/configure --prefix=/usr/local/nginx

# 4. 编译并安装
make && make install

# 5. 创建软链接(全局调用nginx)
ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx

3.验证 Nginx 安装

# 启动Nginx
nginx
# 查看版本
nginx -v

七、前端项目打包

1.项目打包

2.上传项目到云端

直接打开在云端建立的nginx对应的html文件夹,将打包后得到的dist文件拖拽过去即可

3.修改nginx配置

打开配置文件

修改对应信息

1. 静态资源配置(location /块)

确保前端静态资源目录正确指向你的dist目录:

location / {
    root   /usr/local/nginx/html/frontend/dist; # 你的前端dist目录路径
    index  index.html index.htm;
    try_files $uri $uri/ /index.html; # 解决前端路由刷新404问题(Vue/React路由必配)
}
2. 反向代理配置(location /prod-api/块)

配置/prod-api/路径转发到 Spring Boot,需包含代理路径、请求头、超时等:

location /prod-api/ { # 末尾必须加/,匹配/prod-api/开头的请求
    proxy_pass http://127.0.0.1:8085; # 转发到Spring Boot的8085端口
    # 传递请求头(Spring Boot需获取客户端信息、域名等)
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    # 去掉/prod-api/前缀(例如/prod-api/login → /login)
    rewrite ^/prod-api/(.*)$ /$1 break;
    # 代理超时配置(避免请求被提前断开)
    proxy_connect_timeout 30s;
    proxy_read_timeout 60s;
    # 跨域配置(解决前端跨域问题)
    add_header Access-Control-Allow-Origin $http_origin;
    add_header Access-Control-Allow-Methods "GET, POST, OPTIONS";
    add_header Access-Control-Allow-Credentials "true";
    add_header Access-Control-Allow-Headers "*";
    if ($request_method = OPTIONS) {
        return 204;
    }
}
3. 错误页面配置(可选,优化用户体验)

配置 404、50x 等错误页面,指向前端资源:

# 404错误跳转到前端index.html
error_page 404 =200 /index.html;
# 50x错误跳转到前端50x.html(需前端项目包含该文件)
error_page 500 502 503 504 /50x.html;
location = /50x.html {
    root   /usr/local/nginx/html/frontend/dist;
}

执行nginx -s reload重载配置生效;

    4.增加防火墙端口

    (如果没修改默认是80)

    5.启动nginx

    ./nginx

    启动后,通过以下命令确认 Nginx 进程是否存活:

    # 查看Nginx进程
    ps -ef | grep nginx
    # 或查看端口(默认监听80端口)
    netstat -tulpn | grep 80
    

    若能看到nginx进程或 80 端口被监听,说明启动成功。

    八、后端项目打包

    1.项目文件配置

    2.项目打包上传

    右击压缩jar包

    直接把压缩好的jar包通过xshell拖拽到建好的springboot项目文件夹中即可

    3.增加防火墙端口

    4.启动springboot项目

    前台启动(关闭终端项目会停止)

    java -jar 你的jar包名称.jar

    后台启动

    5.访问项目地址

    九、其他问题

    1.SSL握手失败的问题

    打开 SpringBoot 的application.properties(若用 yml 则对应修改)

    修改spring.datasource.url添加useSSL=false(确保已经添加,若已添加则检查是否被其他参数覆盖),同时新增enabledTLSProtocols=TLSv1.2指定协议版本,完整配置如下:

    # 替换为你的云上MySQL地址、端口、数据库名
    spring.datasource.url=jdbc:mysql://你的云上公网地址:你的云上端口/community?useSSL=false&enabledTLSProtocols=TLSv1.2&serverTimezone=UTC&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=utf8&connectTimeout=30000&socketTimeout=30000
    spring.datasource.username=你的云上数据库账号
    spring.datasource.password=你的云上数据库密码
    spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
    

    2.nginx反向代理失败

    修改nginc.conf反向代理还是失败的话,可以看看vue项目中的配置文件是不是改了

    3.Redis远程连接

    可以先使用本地的Redis远程连接工具进行连接测试

      Logo

      魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

      更多推荐