Nginx部署热更新

简介: Nginx部署热更新

提示

由于时间关系,原因以及理论就不在过多的赘述了,上解决方案


Nginx配置

server {
  listen 80;
  server_name vue.example.com;
  return 301 https://vue.example.com$request_uri;
}
server {
  listen 443 ssl;
  server_name vue.example.com;
  ssl_certificate /home/ubuntu/certs/T.yun-ran.com/public.crt;
  ssl_certificate_key /home/ubuntu/certs/T.yun-ran.com/private.key;
  root /home/ubuntu/code/cloud/admin/dist;
  index index.html;
  location / {
    try_files $uri $uri/ /index.html;           
    if ($request_filename ~* ^.*?.(html|htm)$){
      add_header Cache-Control no-cache,no-store,must-revalidate;
    }
  }
}点击复制复制失败已复制


Vue 中检测代码

import axios from 'axios';
import md5 from 'md5';
const AppHashKey = 'app_hash';
/** 检查应用是否有更新 */
export const checkUpdate = () => {
    if (process.env.NODE_ENV !== 'production') return;
    const url = window.location.origin + '/index.html?hash=' + md5(Math.random().toString());
    axios
        .get(url)
        .then(({
            data
        }) => {
            if (md5(data) !== localStorage.getItem(AppHashKey)) {
                localStorage.setItem(AppHashKey, md5(data));
                window.location.reload();
            }
        })
        .catch(err => console.error(err));
};点击复制复制失败已复制


实践方式

前置路由守卫处调用。


方案不足

简单确实是简单,但是会造成过多的请求 index.html 文件,资源会占用比较多。


目标

方案优化持续进行中……

目录
相关文章
|
8月前
|
应用服务中间件 PHP nginx
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
简介: 本教程介绍如何基于 Dragonwell 的 Ubuntu 镜像创建一个运行 Nginx 的 Docker 容器。首先从阿里云容器镜像服务拉取基础镜像,然后编写 Dockerfile 确保 Nginx 作为主进程运行,并暴露 80 端口。最后,在包含 Dockerfile 的目录下构建自定义镜像并启动容器,确保 Nginx 在前台运行,避免容器启动后立即退出。通过 `docker build` 和 `docker run` 命令完成整个流程。
291 25
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
|
5月前
|
应用服务中间件 Linux 网络安全
技术指南:如何把docsify项目部署到基于CentOS系统的Nginx中。
总结 与其他部署方法相比,将docsify项目部署到基于CentOS系统的Nginx中比较简单。以上步骤应当帮助你在不花费太多时间的情况下,将你的项目顺利部署到Nginx中。迈出第一步,开始部署你的docsify项目吧!
209 14
|
弹性计算 运维 监控
快速部署 Nginx 社区版
Nginx是一个高性能的HTTP和反向代理服务器。Nginx在计算巢上提供了社区版服务,您无需自行配置云主机,即可在计算巢上快速部署Nginx服务、实现运维监控,从而方便地基于Nginx搭建您自己的应用。本文介绍使用如何通过计算巢快速部署Nginx社区版。
快速部署 Nginx 社区版
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
12月前
|
前端开发 JavaScript 应用服务中间件
使用nginx部署网站
使用nginx部署网站
|
12月前
|
JavaScript 应用服务中间件 nginx
nginx部署vue项目
本文介绍了将Vue项目部署到Nginx的步骤,包括构建Vue项目、上传dist文件夹到服务器、安装Nginx、配置Nginx代理静态文件以及重启Nginx,确保了Vue应用可以通过域名或IP地址访问。
629 1
|
12月前
|
前端开发 JavaScript 应用服务中间件
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
本文是一篇详细的教程,介绍了如何在Linux系统上安装和配置nginx,以及如何将打包好的前端项目(如Vue或React)上传和部署到服务器上,包括了常见的错误处理方法。
3352 0
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
|
12月前
|
Kubernetes 应用服务中间件 nginx
k8s基础使用--使用k8s部署nginx服务
本文介绍了Kubernetes中核心概念Deployment、Pod与Service的基本原理及应用。Pod作为最小调度单元,用于管理容器及其共享资源;Deployment则负责控制Pod副本数量,确保其符合预期状态;Service通过标签选择器实现Pod服务的负载均衡与暴露。此外,还提供了具体操作步骤,如通过`kubectl`命令创建Deployment和Service,以及如何验证其功能。实验环境包括一台master节点和两台worker节点,均已部署k8s-1.27。
952 1
|
应用服务中间件 nginx Docker
docker应用部署---nginx部署的配置
这篇文章介绍了如何使用Docker部署Nginx服务器,包括搜索和拉取Nginx镜像、创建容器并设置端口映射和目录映射,以及如何创建一个测试页面并使用外部机器访问Nginx服务器。
|
负载均衡 网络协议 应用服务中间件
web群集--rocky9.2源码部署nginx1.24的详细过程
Nginx 是一款由 Igor Sysoev 开发的开源高性能 HTTP 服务器和反向代理服务器,自 2004 年发布以来,以其高效、稳定和灵活的特点迅速成为许多网站和应用的首选。本文详细介绍了 Nginx 的核心概念、工作原理及常见使用场景,涵盖高并发处理、反向代理、负载均衡、低内存占用等特点,并提供了安装配置教程,适合开发者参考学习。
227 1