当前位置:首页 » 《资源分享》 » 正文

前端加载访问速度优化(Nginx)

8 人参与  2024年04月26日 13:50  分类 : 《资源分享》  评论

点击全文阅读


当前端部署文件过大时很容易造成网页加载慢的现象,为了提升加载速度,提供nginx的三种解决方案。

文章目录

1. gzip压缩2. 优化 keepalive 连接3.配置缓存注意事项总结


1. gzip压缩

往nginx.conf 的 http内容段落中加入

    # gzip config    gzip on;    gzip_min_length 1k;    gzip_comp_level 9;    gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;    gzip_vary on;    gzip_disable "MSIE [1-6]\.";

释义如下:
这是用来配置 gzip 压缩的。gzip 是一种用于压缩文件的压缩程序,在 Web 开发中被广泛应用,主要用于压缩 Web 应用的静态资源以减少传输流量,提高网页的加载速度。

gzip on;:启用 gzip 压缩。gzip_min_length 1k;:指定压缩文件的最小长度,只有文件大小超过 1KB 时才启用压缩。gzip_comp_level 9;:指定压缩级别。级别越高,压缩效率越高,但会占用更多的 CPU 资源和时间。一般建议将级别设置为 6-9 之间。(这里根据你的服务器来定)gzip_types:指定需要压缩的文件类型。在这里,配置文件将 text、application 和 image 类型的文件压缩。一般来说,压缩的文件类型应该是纯文本格式或可压缩的二进制文件。gzip_vary on;:使用 Vary 头来指示代理服务器或浏览器缓存已压缩的版本。这样,更高效的压缩格式可以分别缓存,并在请求时正确地使用。gzip_disable "MSIE [1-6]\.";:禁用 gzip 压缩的浏览器,例如早期版本的 Internet Explorer。这些浏览器对于压缩格式的支持很差,因此禁用压缩可以避免出现问题。(这一步避免版本低浏览器访问网页出现问题)

2. 优化 keepalive 连接

keepalive_timeout 65;keepalive_requests 100;

释义如下:

这两个配置参数是用来设置服务器的 keepalive 功能的。

keepalive_timeout: 这个参数指定了一个已经建立的连接在没有活动(无数据传输)时保持的时间长度。对于每个连接,如果超过 keepalive_timeout 时间没有数据传输,则服务器会关闭该连接。默认值通常为 75 秒。较小的值可以确保连接及时释放,但会增加连接关闭和重新建立的频率;较大的值可以减少连接关闭和重新建立的频率,但可能会导致长时间的闲置连接占用服务器资源。keepalive_requests: 这个参数定义了一个 keepalive 连接上最多能够处理的请求次数。当一个 keepalive 连接处理了 keepalive_requests 次请求之后,服务器会关闭该连接。默认值通常为 100。较大的值可以减少连接的关闭和重新建立,但在某些情况下可能会占用过多的服务器资源。

3.配置缓存

往nginx.conf 的 http内容段落中加入

proxy_cache_path /path/to/cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m;

释义如下:

/path/to/cache 是指定的缓存存储路径。levels=1:2 指定了文件系统中缓存目录的层级结构,这里是一级目录和两级子目录。keys_zone=my_cache:10m 定义了一个名为 my_cache 的缓存区域,大小为 10 兆字节。max_size=10g 指定了缓存最大可使用的空间大小为 10 GB。inactive=60m 表示缓存文件在60m时间内没有被访问时,会被视为不活动,并有可能被清理掉。

注意事项

对 Nginx 的配置更改可能需要 root 权限,请确保你有足够的权限来修改相关配置文件。此外,再次强调,修改配置文件前请备份文件以防止意外情况发生,还有就是nginx需要重启生效需要注意。

总结

当然方案不止这三种,以上方案仅供参考,希望能对你优化系统能够有所帮助。
在这里插入图片描述


点击全文阅读


本文链接:http://zhangshiyu.com/post/100543.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1