vue项目部署到服务器

2023-11-18

启动和打包

  1. 进入项目目录
cd 进入到你项目的根目录
  1. 安装依赖
npm install
  1. 强烈建议不要用直接使用 cnpm 安装,会有各种诡异的 bug,可以通过重新指定 registry 来解决 npm 安装速度慢的问题。
npm install --registry=https://registry.npmmirror.com
  1. 本地开发 启动项目
npm run dev
  1. 打包正式环境
npm run build:prod
  1. 打包预发布环境
npm run build:stage
  1. 执行玩打包命令后会默认在项目的根目录生成dist 文件夹
通常情况下 dist 文件夹的静态文件发布到你的 nginx 或者静态服务器即可,其中的 index.html 是后台服务的入口页面。

Ngingx 服务器安装

  1. 默认情况Centos7中无Nginx的源,最近发现Nginx官网提供了Centos的源地址。因此可以如下执行命令添加源
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
  1. 安装Nginx
    使用命令,看看是否已经添加源成功
  yum search nginx
  1. 如果成功则执行下列命令安装Nginx。
sudo yum install -y nginx
  1. 设置开机自启
  systemctl enable nginx
  1. 只有返回类似,提示才能够确定设置成功
 Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /etc/systemd/system/nginx.service

nginx配置文件默认是在 /etc/nginx/nginx.conf

  1. 将打好的dist包放到服务器指定的路径
    我这里是放在 /home/ruoyi/dist ,root 配置必须指向 dist包的根目录

location 配置

location / {
    root   /home/ruoyi/dist;
    try_files $uri $uri/ /index.html;
    index  index.html index.htm;
}

nginx 完整配置

 types_hash_max_size 4096;
    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;

    include /etc/nginx/conf.d/*.conf;
    server {
        listen       80;
        server_name  localhost;


        error_page 404 /404.html;
        location = /404.html {
        }

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
        }
		
		# 指向你的vue静态资源,我打包后的文件放在了/home/ruoyi/dist
        location / {
            root   /home/ruoyi/dist;
            try_files $uri $uri/ /index.html;
            index  index.html index.htm;
        }
        # 
        location /prod-api/ {
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://localhost:8080/;
        }
    }

如果一切配置完毕 通过你的 (ip:80) 就能访问了 如 159.75.229.3:80

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

vue项目部署到服务器 的相关文章

  • arm64和armhf有什么区别?

    Raspberry Pi Type 3 具有 64 位 CPU 但其架构不是arm64 but armhf 有什么区别arm64 and armhf armhf代表 arm hard float 是给定的名称Debian 端口 https
  • CentOS:无法安装 Chromium 浏览器

    我正在尝试在 centOS 6 i 中安装 chromium 以 root 用户身份运行以下命令 cd etc yum repos d wget http repos fedorapeople org repos spot chromium
  • 如何在shell中输出返回码?

    我正在尝试通过调用自定义 shell 脚本sh bin sh c myscript sh gt log txt 2 gt 1 echo 该命令的输出是创建的后台进程的 PID 我想指导 bin sh保存返回码myscript sh到某个文件
  • iptables通过注释删除特定规则

    我需要删除一些具有相同评论的规则 例如 我有带有 comment test it 的规则 所以我可以像这样获得它们的列表 sudo iptables t nat L grep test it 但是我怎样才能删除所有带有注释 测试它 的 PR
  • PHP 无法打开流:是一个目录

    非常简单的 PHP 脚本 我在我亲自设置的 Ubuntu Web 服务器上的 EE 模板中运行 我知道这与权限有关 并且我已经将我尝试写入的目录的所有者更改为 Apache 用户 我得到的错误是 遇到 PHP 错误 严重性 警告 消息 fi
  • SSE:跨页边界的未对齐加载和存储

    我在页面边界旁边执行未对齐加载或存储之前读过某处 例如使用 mm loadu si128 mm storeu si128内在函数 代码应首先检查整个向量 在本例中为 16 个字节 是否属于同一页 如果不属于同一页 则切换到非向量指令 我知道
  • Linux 上有关 getBounds() 和 setBounds() 的 bug_id=4806603 的解决方法?

    在 Linux 平台上 Frame getBounds 和 Frame setBounds 的工作方式不一致 这在 2003 年就已经有报道了 请参见此处 http bugs java com bugdatabase view bug do
  • 如何更改 Apache 服务器的根目录? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何更改 Apache 服务器的文档根目录 我基本上想要localhost从 来 users spencer projects目录而不是
  • CoAP数据包的大小是多少?

    我是这项技术的新手 有人可以帮助我了解一些疑问吗 Q 1 CoAP数据包的大小是多少 我知道有 4 字节固定标头 但是包括标头 选项和负载在内的最大大小限制是多少 Q 2 有像MQTT那样的Keep Alive的概念吗 它在UDP上工作 它
  • 是否可以创建一个脚本来保存和恢复权限?

    我正在使用 Linux 系统 需要对一组嵌套文件和目录进行一些权限实验 我想知道是否没有某种方法可以保存文件和目录的权限 而不保存文件本身 换句话说 我想保存权限 编辑一些文件 调整一些权限 然后将权限恢复到目录结构中 将更改的文件保留在适
  • 删除 Git 存储库,但保留所有文件

    在我使用 Linux 的过程中的某个时刻 我决定将我的主目录中的所有内容都放入源代码管理中是个好主意 我不是在问这是否是一个好主意 我是在问如何撤销它 删除存储库的原因是我最近安装了 Oh My Zsh 而且我非常喜欢它 问题是我的主目录有
  • 在两次之间每分钟执行一次 Cronjob

    我需要在 crontab 中每分钟运行一个 bash 脚本8 45am and 9 50am每天的 Code 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 8 home pull sh gt ho
  • 进程退出后 POSIX 名称信号量不会释放

    我正在尝试使用 POSIX 命名信号量进行跨进程同步 我注意到进程死亡或退出后 信号量仍然被系统打开 在进程 打开它 死亡或退出后是否有办法使其关闭 释放 早期的讨论在这里 当将信号量递减至零的进程崩溃时 如何恢复信号量 https sta
  • Urwid:使光标不可见

    我正在使用 urwid 它是一个用于在 ncurses 中设计终端用户界面的 Python 框架 但有一件事我在 urwid 中无法做到 而这在 Curses 中很容易做到 使光标不可见 现在 选择按钮时光标是可见的 而且看起来很丑 有办法
  • 高效的内存屏障

    我有一个多线程应用程序 其中每个线程都有一个整数类型的变量 这些变量在程序执行期间递增 在代码中的某些点 线程将其计数变量与其他线程的计数变量进行比较 现在 我们知道在多核上运行的线程可能会无序执行 一个线程可能无法读取其他线程的预期计数器
  • 如何查询X11显示分辨率?

    这似乎是一个简单的问题 但我找不到答案 如何查询 通过 X11 存在哪些监视器及其分辨率 查看显示宏 http tronche com gui x xlib display display macros html and 屏幕宏 http
  • PyQt5 - 无法使用 QVideoWidget 播放视频

    from PyQt5 QtWidgets import from PyQt5 QtMultimedia import from PyQt5 QtMultimediaWidgets import from PyQt5 QtCore impor
  • 如何允许应用程序声明“https”方案 URI? (即如何从 https URL 打开桌面应用程序?)

    目前我正在尝试为 OAuth 2 0 授权流程创建一个客户端 实际上是一个本机应用程序 并且在规范中就在这儿 https www rfc editor org rfc rfc8252 section 7 2据说有 3 种方法来处理重定向 U
  • 为什么C Clock()返回0

    我有这样的事情 clock t start end start clock something else end clock printf nClock cycles are d d n start end 我总是得到输出 时钟周期是 0
  • Capistrano 3 部署无法连接到 GitHub - 权限被拒绝(公钥)

    我使用 Capistrano v3 和 capistrano symfony gem 设置了以下部署脚本 我正在使用 Ubuntu 14 4 部署到 AWS EC2 实例 我正在连接从 AWS 下载的 pem 文件 我的deploy rb中

随机推荐

  • Redis为什么快

    Redis有多快 Redis采用的是基于内存的采用的是单进程单线程模型的 KV 数据库 由C语言编写 官方提供的数据是可以达到100000 的QPS 每秒内查询次数 这个数据不比采用单进程多线程的同样基于内存的 KV 数据库 Memcach
  • [数据库] MySQL基础知识之日期判断及添加排序序号

    这篇文章主要记录MySQL中遇到的几个基础问题 希望文章对你有所帮助 包括 1 日期类型的判断 2 decode函数的替代方法 3 查询语句中添加一个排序的序号 4 子函数查询select a 1 日期类型判断 日期类型主要是 DATE 显
  • Python中if __name__ == ‘__main__‘:

    也看了一些别人的总结 这里就结合其他文章谈谈自己的理解 Python中 if name main 我刚开始看的时候就直接把他当成了一个项目运行的开始 至于为什么也没有仔细研究 后来看得多了 就研究了一下 name 是每一个python文件的
  • win10安装Ubuntu20.04虚拟机

    打开VMware Workstation的界面为下方的画面 注意第一次安装的时候我的计算机中是没有系统的 点击创建新的虚拟机会出现下方界面 选择自定义然后点击下一步 继续点击下一步选择稍后安装操作系统 继续点击下一步 继续下一步选择安装位置
  • 二级下拉菜单布局(纵向、横向)

    一级菜单 在ul列表内建立li元素并清除默认样式 让所有li元素左浮动并清除浮动 DOM中文档结构如下 ul class clearfix li a href 1 a li li a href 2 a li li a href 3 a li
  • Jupyter远程配置

    安装Jupyter pip install jupyter 生成默认配置文件 jupyter notebook generate config 生成密钥 python gt gt gt from notebook auth import p
  • 【React】单页面应用限制多开登录

    react 单页面应用限制多开登录 情景 测试小姐姐提了一个 BUG 在同一浏览器中打开两个页面 两个页面分别登录不同的账号 A 页面先登录A B 页面再登录B 此时回到 A 页面 交互时账号数据应该刷新为 B 登录的账号 分析 这个问题
  • 怎么设置权限?后台管理系统中的功能权限和数据权限设置

    一 功能级 页面级 权限 不同的用户 角色 登录到管理系统后 看到的功能不一样 思路 前端进入登录页面 前端发送请求给后端 后端验证用户名和密码是否正确 如果验证通过 需要根据用户所属的角色查他对应功能 path 响应给前端 前端接收到后端
  • RK3568 CAN驱动更新说明

    RK3568 CAN问题 同时收发数据一段时间 几秒钟 can出现错误收发功能异常 必须重新down up恢复正常 内核更新rockchip canfd c iopoll h 配置Networking support gt CAN bus
  • 学习笔记-Matlab算法篇-图与网络

    图与网络 01基本概念 介绍 图分为无向图和有向图 一个无向图 undirected graph G是由一个非空有限集合 V G 和V G 中某些元素的无序对集合E G 构成的二元组 记为G V G E G V G 称为顶点集 E G 称为
  • openGL使用assimp加载fbx格式三维模型

    前言 前面的文章中有讲过assimp加载obj三维文档格式 如果想要加入纹理还得配合对应的mtl格式和png格式才能加入纹理 今天来说下使用assimp加载fbx格式的三维模型 先看下运行效果 使用fbx模型 1 assimp库下载以及配置
  • Cocos2d-Lua(Quick-Cocos2d-x)集成第三方SDK(一)

    在我们实际开发过程中 经常会遇到需要使用第三方SDK的情况 比如我们常用的 友盟 TalkingData之类的统计分析SDK 移动MM 电信爱游戏之类的计费SDK 个推 百度推送之类的推送SDK 诸如此类的在iOS平台也有一大堆 那么在使用
  • Python27编译成pyd, 遇到error: Unable to find vcvarsall.bat

    我目前遇到2种情况 前提安装了 Python27 Cython setup py from setuptools import setup from Cython Build import cythonize setup ext modul
  • Kubernetes 集群部署 ------ 二进制部署(二)

    单节点 https blog csdn net Yplayer001 article details 104234807 先具备单master1节点部署环境 三 master02部署 优先关闭防火墙和selinux服务 在master01上
  • SQL中GROUP BY用法示例

    概述 GROUP BY我们可以先从字面上来理解 GROUP表示分组 BY后面写字段名 就表示根据哪个字段进行分组 如果有用Excel比较多的话 GROUP BY比较类似Excel里面的透视表 GROUP BY必须得配合聚合函数来用 分组之后
  • react项目按需加载报错 .libraryName is not a valid Plugin property

    babel presets react app plugins import libraryName antd style true 原配置如上会报错 libraryName is not a valid Plugin property g
  • Linux-MySQL 5.7.30安装与配置及开机自启

    Linux MySQL5 7 30安装配置 1 准备 1 1 检测系统是否自带MySQL 1 2 如果有 则使用下面命令进行删除 1 3 删除成功后 查询所有Mysql对应的文件夹 1 4 删除上面查找的所有文件夹 2 安装 2 1 使用X
  • java 调用C#的webservice

    import java rmi RemoteException import java util regex Matcher import java util regex Pattern import javax xml rpc Servi
  • TPS-1教学:TPS-1主控MCU程序软件移植指南

    TPS 1教学 TPS 1主控MCU程序软件移植指南视频 TPS 1教学 TPS 1主控MCU程序软件移植指南 电子发烧友网
  • vue项目部署到服务器

    启动和打包 进入项目目录 cd 进入到你项目的根目录 安装依赖 npm install 强烈建议不要用直接使用 cnpm 安装 会有各种诡异的 bug 可以通过重新指定 registry 来解决 npm 安装速度慢的问题 npm insta