vue3 + springboot 简单部署到Windows服务器以及可能遇到的问题

2023-05-16

网上将项目部署到服务器的参考很多,这里只介绍简单部署的方式。


目录

一、准备工作

二、vue部署

1、打包vue项目

 2、将dist文件夹拷贝到Nginx的安装目录下

 3、配置Nginx

(1)  修改服务器ip地址和端口号

(2) 修改打开的.html文件地址

4、启动Nginx

5、在浏览器中打开网页

6、问题:输入ip和端口号以后,网站是空白页??

三、后端部署

1、在服务器的某个盘中新建一个文件夹demo

2、下载WinSW

3、package打包springboot项目

4、新建一个.xml文件,文件名为项目名

 5、安装服务

6、测试

 四、建立前端和后端的连接

 五、问题:刷新页面以后,页面404

 六、问题:项目里用到webSocket,前端一直报错


一、准备工作

为了能在服务器上正常运行前端和后端,需要在服务器上下载以下内容

(1) 安装Nginx —— 用于部署vue(nginx: download)

(2) 安装mysql —— 数据库

(3) 下载WinSW —— 用于部署springboot项目(Releases · winsw/winsw · GitHub)

(4) 安装jdk —— 让后端项目在服务器上独立运行的关键(记下安装路径)

二、vue部署

1、打包vue项目

将vue项目打包成dist文件夹,在package.json文件中,点击build进行打包

 2、将dist文件夹拷贝到Nginx的安装目录下

找到Nginx的安装目录下的 html目录

 将dist文件夹放到这个目录下

 3、配置Nginx

进入上面的conf 目录下,打开 nginx.conf文件

目前先修改两处地方,因为vue项目和springboot项目是分开部署到服务器上的,所以后面vue访问后端还需要做一定的调整。

(1)  修改服务器ip地址和端口号

 因为现在是把vue前端交给了Nginx代理,所以这里的端口号不一定是我们在vue项目中设置的端口号。这里的端口号必须是当前服务器开放的端口号。

(2) 修改打开的.html文件地址

 Nginx在开始运行以后,运行的就是root对应的路径下的 index.html文件,我们要让Nginx运行我们dist文件夹中的index.html文件。

4、启动Nginx

先打开Nginx安装路径下的命令行

输入start nginx,就可以启动Nginx了,要查看是否启动成功,可以进入logs目录下,如果有nginx.pid,说明启动成功。这里的error.log 记录着网页出现问题时的错误信息。

输入 nginx -s stop,就可以停止Nginx了,更多指令可以自行百度。

 注意:不建议使用IE浏览器打开,可能会出现404 Not Found

5、在浏览器中打开网页

在浏览器地址栏输入Nginx中修改的ip地址和端口,如果可以显现界面就说明启动正常。

6、问题:输入ip和端口号以后,网站是空白页??

我在部署的过程中曾经遇到这样的问题,打开以后,网站是空白的,也没有什么404 Not Found,我们项目是vue3.0的,所以我在vue.config.js中加了这么一些内容

三、后端部署

1、在服务器的某个盘中新建一个文件夹demo

2、下载WinSW

下载路径: Releases · winsw/winsw · GitHub

打开网址以后,向下滑,可以找到下面的内容,并下载 WinSW.NET4.exe,将下载好的WinSW.NET4.exe拷贝到上面创建好的demo文件夹中,并将 .exe文件的名字重命名为你的项目名。

3、package打包springboot项目

在打包之前,你需要将你项目中application.properties或者application.yml的 mysql 登录密码改为服务器中mysql的登录密码。然后再打包。

这里打包后端采用的是较为直接的方式。打包完成后,我们可以在target文件夹下找到 jar包, 将这个jar包拷贝到demo文件夹中。

4、新建一个.xml文件,文件名为项目名

将下面的内容拷贝到这个 xml文件中,当然,需要稍加修改

<configuration>
  
  <!-- ID of the service. It should be unique accross the Windows system-->
  <id>faultDetectionService</id>
  <!-- Display name of the service -->
  <name>faultDetectionService</name>
  <!-- Service description -->
  <description>This service is a service cratead from a minimal configuration</description>
  
  <!-- Path to the executable, which should be started -->
  <executable>C:\Program Files\Java\jre1.8.0_202\bin\java.exe</executable>
  
  <arguments>-jar demo-0.0.1-SNAPSHOT.jar</arguments>

</configuration>

 5、安装服务

打开当前目录下的命令行,输入  xxx.exe install

 继续输入 net start

安装成功以后,打开任务管理器,选择“服务”,找到和你项目名同名的服务,启动该服务,到此你的后端就已经开始运行了。

6、测试

我们可以使用postman来测试是否可以访问到后端,先让上面的服务启动,打开postman,输入后端的请求地址,如果能正常获取到后端返回的内容说明后端无异常。

 四、建立前端和后端的连接

因为前端和后端是分开部署到服务器上的,为了让后端可以接收到前端的请求,我们需要搭建起前端和后端的连接。关于这个,我也弄了很久,因为我的跨域处理是放在前端的vue.config,js中的,看网上说,vue部署到服务器以后,跨域处理会失效,所以跨域处理要放在 Nginx中,到现在我也搞不清楚是为什么。

我在vue里的设置如下

vue里我不做修改,我主要是在nginx.conf中添加代理内容,添加的内容如下,9090是我的后端端口号。

 五、问题:刷新页面以后,页面404

我的做法是加上下面两部分内容

 六、问题:项目里用到webSocket,前端一直报错

部署到服务器上以后,因为项目中用到了webSocket,不知为什么,一直在报错。

网上了解了一下,这里的localhost要改成服务端的ip地址,在代码中是这样。

 如果还会报下面这样的错误,那就试着把防火墙关了

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vue3 + springboot 简单部署到Windows服务器以及可能遇到的问题 的相关文章

  • centos 解决 -bash: shasum: command not found

    root 64 c1 src ll total 95624 rw r r 1 root root 97914519 Oct 2 21 58 elasticsearch 6 4 2 tar gz rw r r 1 root root 156
  • powershell中压缩与解压缩zip文件的问题

    powershell压缩与解压缩zip文件 powershell一些小使用技巧能在开发过程中带来便捷 powerShell v5 以前 这里先介绍powershell v5之前的做法 xff1a 1 解压缩zip function Unzi
  • Kotlin 在Android使用问题

    1 kotlin与Databinding的使用出现 Unresolved reference ActivityMainBinding 的错误 解决方案 xff1a app build kapt generateStubs 61 span c
  • spring框架

    关于spring的说法错误的是 xff08 D xff09 A spring是一个轻量级Java EE的框架集合 B spring的 依赖注入 模式的实现 C 使用spring可以实现声明事务 D spring提供了AOP方式的日志系统 解
  • NSAttributedString用法简介,控制文字颜色,背景色等属性

    NSAttributedString用来管理字符串以及和字符串相关的属性 下面的代码是根据字符范围设置label的text的颜色 UIFont font 61 UIFont systemFontOfSize 14 0 行间距和字体 NSDi
  • AVStream AVCodecContext AVCodec

    AVStream 表示成一个流媒体 xff0c 每个AVStream对应一个AVCodecContext xff0c 存储该音视频流使用解码器的相关数据 xff0c 每个AVCodecContext中对应一个AVCodec 包含该音视频的解
  • 2022 年 GIS 就业状况

    2022 年 GIS 就业状况 我们生活在数字时代 xff0c 通过进行在线研究选择我们的道路 xff0c 比如选择假期 选择大学或追求职业 如果您正在考虑进入 GIS 领域或在 GIS 领域进一步发展 xff0c 那么这份报告一定会有所帮
  • 在Keyguard锁屏上面可弹出Toast消息的方法

    通过调用toast的getWindowParams方法获取toast的WindowParams xff0c 再设置允许在锁屏之上显示的window flag FLAG SHOW WHEN LOCKED 参考代码如下 Toast mToast
  • vsftpd的参数说明和虚拟用户配置

    vsftpd配置文件详解 1 默认配置 xff1a 1 gt 允许匿名用户和本地用户登陆 anonymous enable 61 YES local enable 61 YES 2 gt 匿名用户使用的登陆名为ftp或anonymous x
  • gradle 插件版本、gradle版本 和buildToolsVersion之间的对应关系

    一 主要概念 1 Gradle是什么 xff1f Gradle其实就是一个构建项目的工具 xff0c 即把一堆堆的目录 文件按照一定的规则关联起来 xff0c 形成一个项目的自动化构建工具 Gradle版本 如 xff1a gradle 5
  • 学神的“诞生”-2014清华大学本科生特等奖学金答辩观后感

    清华的特奖与交大的竢实扬华 偶然间在学堂在线上留意到有这样的一场现场答辩 xff0c 很想知道最高学府的最高荣誉花落谁家 xff0c 得此殊荣的又是些怎样的 学神 xff0c 几点感受记录之 1 经历 gt gt 证书 清华的学生更注重大学
  • nexus3.14.0版本linux环境安装、启动、搭建私库

    本文介绍的是nexus3 14 0版本在linux环境下安装 启动 搭建私库 nexus3以上的版本太新了 xff0c 网上很少介绍安装细节的 据了解和2 X版本有所不同了 1 前提 linux机器上需先安装好jdk xff0c 并且配置好
  • CentOS7安装MariaDB以及编码注意事项

    1 安装并启动MariaDB span class hljs preprocessor 先更新一下 span yum upgrade span class hljs preprocessor 安装 span yum y install ma
  • c++多线程 (生产者消费者问题)

    针对多线程中常见的生产者消费者问题 xff0c 封装了一个类 xff0c 和测试代码 xff0c 方便日后直接套用 具体来说就是多线程使用时候经常遇到的 一个线程取数据 xff0c 一个处理数据 xff0c 一个保存或传递数据 的情况 简单
  • 看技术书籍坚持不下来的,看这里,记录增量学习法

    今天 xff0c 在阅读 软技能 代码之外的生存指南 这本书的过程中 xff0c 学习到了番茄工作法 定额工作法 xff0c 受此启发 xff0c 突然脑海里冒出了一个方法论 xff0c 这是我独创的一个学习方法论 xff0c 我把它称作
  • Android native内存泄露排查总结

    Android开发通常涉及java层 native xff08 c c 43 43 xff09 下的开发 xff1b 内存的泄露也可以分为dalvik和native两种 xff1b java层的通常叫好分析 xff0c 可以借助heapdu
  • 分享一个手游脚本源码

    目的 给大家接触手游模拟脚本的一个样板 xff0c 支持多分辨率适配 脚本功能为批量送体力给好友 xff0c 功能简单 源码 lua span class token comment 版本 span span class token com
  • crackme例子2

    样本 jadx clacSnFuntion jni函数 xff0c ida分析 关键位置函数一片红色 xff0c 可能有动态加解密 如果不分析具体解密算法 xff0c 可内存dump解密后整个so frida如下 xff1a span cl
  • 8本游戏开发书籍推荐

    很多刚刚接触游戏开发的朋友经常问我 xff1a 如何开始学习游戏开发 xff1f 我从事游戏开发行业很多年了 xff0c 坦率地讲 xff0c 开发游戏充满挑战性 xff0c 需要开发人员具备大量的技能与积极的创新精神 希望这篇小文能帮助朋
  • win10编译scrcpy详解

    环境配置 安装MSYS2 安装后打开msys终端 xff0c 运行如下命令 span class token comment runtime dependencies span pacman S mingw w64 x86 64 SDL2

随机推荐