服务器开启gzip(服务器开启防火墙后无法远程)
- 服务器
- 2022-12-21 02:41:26
- 34
今天给各位分享服务器开启gzip的知识,其中也会对服务器开启防火墙后无法远程进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
Nginx服务器中的Gzip配置参数详解
gzip on; 开启gzip off关闭
gzip_min_length 1k; 设置允许压缩的页面最小字节(从header头的Content-Length中获取) 建议大于1k
gzip_buffers 4 16k; 以16k为单位,按照原始数据大小以16k为单位的4倍申请内存
gzip_http_version 1.1; 识别http协议的版本,早起浏览器可能不支持gzip自解压,用户会看到乱码
gzip_comp_level 2; 等级1-9 最小的压缩最快 但是消耗cpu
gzip_types text/plain application/x-javascript text/css application/xml; 匹配压缩类型
gzip_vary on; 启用应答头"Vary: Accept-Encoding"
gzip_proxied off;
nginx做为反向代理时启用,off(关闭所有代理结果的数据的压缩),expired(启用压缩,如果header头中包括"Expires"头信息),no-cache(启用压缩,header头中包含"Cache-Control:no-cache"),no-store(启用压缩,header头中包含"Cache-Control:no-store"),private(启用压缩,header头中包含"Cache-Control:private"),no_last_modefied(启用压缩,header头中不包含"Last-Modified"),no_etag(启用压缩,如果header头中不包含"Etag"头信息),auth(启用压缩,如果header头中包含"Authorization"头信息)
gzip_disable msie6;
(IE5.5和IE6 SP1使用msie6参数来禁止gzip压缩 )指定哪些不需要gzip压缩的浏览器(将和User-Agents进行匹配),依赖于PCRE库
gzip 决定是否开启gzip模块
gzip_buffers 设置gzip申请内存的大小,其作用是按块大小的倍数申请内存空间,param2:int(k) 后面单位是k
gzip_comp_level 设置gzip压缩等级,等级越底压缩速度越快文件压缩比越小,反之速度越慢文件压缩比越大
gzip_min_length 当返回内容大于此值时才会使用gzip进行压缩,以K为单位,当值为0时,所有页面都进行压缩
gzip_types 设置需要压缩的MIME类型,非设置值不进行压缩
param:text/html|application/x-javascript|text/css|application/xml
对于多数以文本为主的站点来说,文本自身内容占流量的绝大部分。虽然单个文本体积并不算大,但是如果数量众多的话,流量还是相当可观。启用GZIP以后,可以大幅度减少所需的流量。
教你开启apache服务器gzip压缩配置的操作方法
实现操作
1、找到并打开apache/conf目录中的httpd.conf文件
2、httpd.conf中打开deflate_Module和headers_Module模块,具体做法为将
如下两句前面的#去掉:
LoadModule
deflate_module
modules/mod_deflate.so
LoadModule
headers_module
modules/mod_headers.so
3、在httpd.conf文件底部加入如下代码配置需要压缩的文件类型:
IfModule
deflate_moduleSetOutputFilter
DEFLATE#
Don’t
compress
images
and
otherSetEnvIfNoCase
Request_URI
.(?:gif|jpe?g|png)$
no-gzip
dont-varySetEnvIfNoCase
Request_URI
.(?:exe|t?gz|zip|bz2|sit|rar)$
no-gzip
dont-varySetEnvIfNoCase
Request_URI
.(?:pdf|doc)$
no-gzip
dont-varyAddOutputFilterByType
DEFLATE
text/html
text/plain
text/xml
text/cssAddOutputFilterByType
DEFLATE
application/x-javascript/IfModule
4、重启apache服务端
5、使用站长工具查看是否已经开启。
前端打包gzip + nginx开启静态gzip
服务端动态gzip是常见的方案,即服务端判断浏览器http请求头中的Accept-Encodin是否有gzip,有的话就说明浏览器支持gzip服务器就实时压缩生成gzip返回给浏览器,否则就返回原文件。但是这种模式是比较消耗服务器CPU的,如果前端打包的时候就压缩好,把原文件和gzip文件全丢到服务器上,服务器不干压缩的活,只区分浏览器是不是支持gzip,支持就返gzip文件,不支持就返原文件,那就能省去服务器动态压缩的环节。
PS:因为Linux系统下nginx不能向磁盘写文件,所以服务端只能实时生成。
PS:服务器数量少的条件,就不要用nginx动态压缩了。
不同的前端框架配置gzip的方式不一样,这里不多说,网上方法非常多。这里我用的VUE,可以参考下:
1、前端文件部署到服务器后,在nginx.config的目标应用location下配置 gzip_static;
gzip_static on;
gzip_http_version 1.1;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
gzip_vary on ;`
说明nginx的编译参数缺失,需要添加--with-http_gzip_static_module参数,然后重新编译:
3、验证静态gzip是否生效:
关于服务器开启gzip和服务器开启防火墙后无法远程的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
本文由admin于2022-12-21发表在靑年PHP官网,如有疑问,请联系我们。
本文链接:http://www.qnphp.com/post/220517.html