http缓存及http2配置

http缓存及http2配置极大提高了网页加载得速度

1.1 nginx安装

首先是需要安装nginx 去官网下载windows版本的安装包

nginx 命令

nginx start //启动
nginx -s stop
nginx -s reload // 重新运行
tasklist /fi "imagename eq nginx.exe" //进程

 把打包好的文件copy到nginx文件得html目录下

 1.2nginx 启用gzip压缩

http {

// 其他配置

    gzip  on;

    gzip_min_length 1k; //超过1k就压缩

    gzip_comp_level 6;

    gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/json; //需压缩文件得类型

    gzip_buffers 4 16k;

    gzip_vary on;

    gzip_http_version 1.1;

        server {

        }

}

配置完成后 nginx -s reload 重新启动服务

输入curl -v  http://localhost:80可查看到http得版本或者在控制台也可以

配置详情

1.3启用http keep-alive

就是对tcp链接进行复用,http1.1默认开启了,可看到其他请求未有tcp链接减少网络开销

 

 额外配置

 keepalive_timeout  65; //65s后会关闭掉
 keepalive_requests 100; //请求超过多少就关闭

 1.4启用http缓存

第二种和第三种差不多 现在主要用第三种;第二种有坑这里客服端得得时间和服务器的时间会不同

配置:

server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
            try_files $uri /index.html;
            if ($request_filename ~* .*\.(?:htm|html)$) // 不缓存html
                {
                   add_header Cache-Control "no-cache, must-revalidate";  
                   add_header "Pragma" "no-cache";
                   add_header "expires" "no-cache";
                }
             if ($request_filename ~* .*\.(?:js|css)$) 
                {
                    expires 7d; // 过期时间7天 根据需求可适当延长时间这不是主要的 我们在webpack上用hash做了配置的更新后也会让旧文件缓存失效
                }
            if ($request_filename ~* .*\.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm)$) 
            {
                expires 7d;
            }
        }
 }       

1.5 service workers技术没有网络也可访问网站

每个框架都有对应的实现方式可自行查看

1.6 开启http2

http2优化点

1.多路复用 同个时刻多个请求并发成一个请求

2.服务器推送 重要的资源提前推送到客服端这些资源就不需要请求了

 

  1安装openssl 

去官网下载安装即可OpenSSL官方下载 - 码客,再配置系统环境变量

 

2 生成测试ssl证书,正式的ssl证书是需要付费的

openssl genrsa -des3 -passout pass:x -out server.pass.key 2048

openssl rsa -passin pass:x -in server.pass.key -out server.key 

openssl req -new -key server.key -out server.csr 

openssl x509 -req -sha256 -days 3650 -in server.csr -signkey server.key -out server.crt

 

配置

http {

server {

       listen 443 ssl http2;

       server_name  localhost;

    #    ssl on;

    location / {

           root   html;

              index  index.html index.htm;

            try_files $uri /index.html;

       }

       ssl_certificate      /Users/Admin/Downloads/ssl/server.crt; //路径根据实际调整

       ssl_certificate_key  /Users/Admin/Downloads/ssl/server.key;

       ssl_session_cache    shared:SSL:1m;

       ssl_session_timeout  5m;

       ssl_ciphers  HIGH:!aNULL:!MD5;

       ssl_prefer_server_ciphers  on;

    #    http2_push static/img/loginimg.jpg // 服务端推送

       

    }

}

 配置完成后nginx -s reload 访问是https://localhost;443 注意https

会无法访问直接输入thisisunsafe

总结:http1对比http2 多路复用 相比网络请求少了 从而减少资源消耗

http1

http2 

 

7-6 SSR技术(next插件)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/724912.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python4 操作MySQL数据库

通过python的pymysql库连接到本地的MySQL数据库,并执行查询操作来获取数据,然后打印出每一行的数据,这里以一个简单的学生表为例进行介绍。 1. MySQL的安装与数据准备 首先需要安装MySQL,在安装完成之后使用Navicat与本地数据库…

数据分析:RT-qPCR分析及R语言绘图

介绍 转录组分析是一种用于研究细胞或组织中所有RNA分子的表达水平的高通量技术。完成转录组分析后,科学家们通常需要通过定量实时聚合酶链式反应(qRT-PCR)来验证二代测序(Next-Generation Sequencing, NGS)结果的可靠…

就业市场挑战重重,求职者如何进入Salesforce生态系统?

目前,就业市场充满挑战,轻松进入Salesforce生态系统的日子已经一去不复返了。尽管入门级角色仍然存在,但市场上的申请者数量已超过其需求。成千上万的求职者争夺有限的职位,因此从人群中脱颖而出需要制定战略方法,求职…

3d模型有个虚拟外框怎么去除?---模大狮模型网

在3D建模和渲染过程中,虚拟外框(Bounding Box)是一个常见的显示元素,用于表示模型的包围盒或选择状态。尽管虚拟外框在一些情况下有其作用,但在最终渲染或呈现阶段,我们通常希望清除这些辅助显示,以展示纯粹的模型效果…

JAVAEE之网络原理(2)_传输控制协议(TCP)的连接管理机制,三次握手、四次挥手,及常见面试题

前言 在上一节中,我们简单介绍了 TCP 协议的相关概念和格式,而且还介绍了TCP 协议原理中的 确认应答机制、超时重传机制,在本节中我们将会继续介绍 TCP协议原理中的其他机制。 连接管理机制(安全机制) 在正常情况下&…

搭建musetalk数字人的步骤

生成数字人的视频效果 搭建步骤 下载git代码 git clone https://github.com/TMElyralab/MuseTalk.git创建conda环境 (建议使用 python 版本 >3.10 和 cuda 版本 11.7。) conda create -n musetalk python3.10进入conda环境 conda activate musetalk下载项目依赖包 pip…

安装免费版的jfrog artifactory oss

1、下载 软件,本案例安装的是 jfrog-artifactory-oss-7.59.11-linux.tar.gz https://releases.jfrog.io/artifactory/bintray-artifactory/org/artifactory/oss/jfrog-artifactory-oss/ 2、解压下载下来的压缩包 tar zxf jfrog-artifactory-oss-7.59.11-linux.tar…

晨持绪科技:抖音小店的前景究竟怎么样

随着移动互联网的迅猛发展,短视频平台快速崛起并逐渐成为人们日常生活中不可或缺的一部分。作为国内领先的短视频平台,抖音在近年推出了“抖音小店”功能,为商家提供了一个新兴的、流量巨大的电商渠道。这一功能的推出不仅改变了传统的购物方…

Sui主网升级至V1.27.2版本

其他升级要点如下所示: 重点: #17245 增加了一个新的协议版本,并在开发网络上启用了Move枚举。 JSON-RPC #17245: 在返回的JSON-RPC结果中增加了对Move枚举值的支持。 GraphQL #17245: 增加了对Move枚举值和类型的支持。 CLI #179…

Linux进程概念(个人笔记)

Linux进程概念 1.冯诺依曼体系结构2.操作系统(先描述,再组织)3.进程3.1查看进程的方式3.2通过系统调用获取进程标识符3.4查看进程中常见字段状态的指令3.3fork创建子进程3.3.1fork的原理 3.4进程状态3.5进程优先级3.5.1Linux内核的调度队列与…

001、DM8安装

参照:https://eco.dameng.com/document/dm/zh-cn/pm/install-uninstall.html 1. 准备工作 操作系统查看 [rootora19c ~]# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core)新建用户 [rootora19c ~]# groupadd dinstall -g 2001 [rootora19c ~]# …

linux写代码环境和工具

基础指令 目录 前言 二、yum工具的使用 1.yum是什么? 2.查看软件包 3.配置sudo 4.如何卸载软件 三、vim的使用 1. vim的基本概念 2. vim的基本操作 3. vim正常模式命令集 4.简单vim配置 四、Linux编译器-gcc/g使用 1、格式 2、gcc选项 3.gcc/g工作和…

jpg格式图片无法打开可以修复吗?有哪些方法?

JPG的图片打不开怎么办呢?当JPG图片打不开的时候,我们需要先了解下具体的原因,是因为格式不支持,还是因为图片文件损坏。不同的原因,解决的方法也会不同,比如图片损坏,我们就需要对图片修复处理…

分页插件结合collection标签后分页数量不准确的问题

问题1:不使用collection 聚合分页正确 简单列子 T_ATOM_DICT表有 idname1原子12原子23原子34原子45原子56原子6 T_ATOM_DICT_AUDIT_ROUTE表审核记录表有 idaudit1拒绝1通过4拒绝 我要显示那些原子审核了,我把两个表inner join 就是那些原子审核过了 idnameaudit1原子1拒绝…

“Photoshop AI插件:StartAI的全面使用攻略

随着人工智能技术的飞速发展,Photoshop作为设计师们不可或缺的工具,也在不断地融入AI技术,以提升设计效率和效果。在2024年,PSAI插件StartAI因其强大的功能和易用性,成为了Photoshop用户的得力帮手。下面来给大家详细介…

Linux安装kvm虚拟机

kvm是基于内核的虚拟机,为什么要用kvm不用vmware、virtual box… 只有一个原因,它非常快!本机使用linux开发也是因为它快!linux在老电脑上都能流畅运行,更别说现代电脑,如果你觉得装Linux并没有比win快多少…

企业设备管理现状与解决方案

在当今企业运营中,设备管理作为保障生产稳定、提升效率的重要环节,其复杂性和挑战性日益凸显。无论是生产车间、石油化工、物业小区,还是消防器材、建筑施工等领域,都面临着设备故障频发、维修流程繁琐等共性问题。 为了帮助企业…

Python微磁学磁倾斜和西塔规则算法

📜有限差分-用例 📜离散化偏微分方程求解器和模型定型 | 📜三维热传递偏微分方程解 | 📜特定资产期权价值偏微分方程计算 | 📜三维波偏微分方程空间导数计算 | 📜应力-速度公式一阶声波方程模拟二维地震波…

PostgreSQL源码分析——缓冲区管理器

这里我们分析一下PG数据库缓冲区的代码。缓冲区是十分重要的,对数据库的性能和稳定性有着直接的影响。缓冲区是数据库SQL计算层与外部存储(磁盘)交互的关键。数据页的落盘与读取,都要经过缓冲区。 README src/backend/storage/…

为什么网络安全缺口很大,而招聘却很少?

2020年我国网络空间安全人才数量缺口超过了140万,就业人数却只有10多万,缺口高达了93%。这里就有人会问了: 1、网络安全行业为什么这么缺人? 2、明明人才那么稀缺,为什么招聘时招安全的人员却没有那么多呢&#xff1…