Questions tagged «gzip»

Gzip是用于文件压缩和解压缩的多种软件应用程序中的任何一种。该术语通常指GNU项目的实现,“ gzip”代表GNU zip。它基于DEFLATE算法,该算法是Lempel-Ziv(LZ77)和Huffman编码的组合。

3
在Apache中启用gzip压缩时未发送Content-Length?
我非常感谢您对理解Apache行为的一些帮助。 我正在从application / json中的iPhone Objective-C应用程序与PHP通信。Gzip压缩在服务器上启用,并由客户端请求。 从我的.htaccess: AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php application/json 对于较小的请求,Apache会设置“ Content-Length”标头。例如(这些值从标头在Objective-C中输出): Connection = "Keep-Alive"; "Content-Encoding" = gzip; "Content-Length" = 185; <------------- "Content-Type" = "application/json"; Date = "Wed, 22 Sep 2010 12:20:27 GMT"; "Keep-Alive" = "timeout=3, max=149"; Server = Apache; Vary = "Accept-Encoding"; "X-Powered-By" = "PHP/5.2.13"; "X-Uncompressed-Content-Length" …


1
Nginx Gzip预压缩模块为什么不起作用?
我目前正在尝试设置Nginx来提供我所有的静态文件。由于根本不会经常更改它们,因此我希望我们使用gzip_static模块,以允许我对文件的gzip副本进行预gzip压缩,以节省一些cpu时间并允许更好的压缩。 我用编译了Nginx --with-http_gzip_static_module并进行了设置,以便它可以为我的静态文件提供服务,到目前为止没有问题。我想测试并确保静态gziping确实可以正常工作,所以我制作了两个文件test.txt和test.txt.gz。每个文件的第一行都表明是否压缩了文件,然后有一个换行符和256个随机字符(两个文件之间不同)。 我已经读过文件的修改时间和gzip压缩的对应文件应该相同,并且我尝试了以下两种方法: touch test.* touch -r test.txt test.txt.gx 在本地计算机上,我正在测试curl: curl $URL/test.txt 效果很好,我找回了没有预压缩的版本,但是当我这样做时: curl -H "Accept-Encoding: gzip" $URL/test.txt | gunzip 我还找回了我没有预压缩的版本。我尝试将设置gzip off为nginx.conf,但没有任何区别。我也用Nginx重新编译了Nginx,--without-http_gzip_module这似乎也没有什么不同,Nginx 仍在动态地 gzip自压缩。 我对Nginx还是很陌生,但是我真的很茫然。 这是输出 ./nginx -V built by gcc 4.4.6 20110731 (Red Hat 4.4.6-3) (GCC) configure arguments: --sbin-path=$SOMEPATH/nginx --prefix=$SOMEPATH --user=$ME --group=$MYGROUP --with-http_gzip_static_module --without-http_gzip_module 这是我的 nginx.conf worker_processes 1; …
11 nginx  gzip 

4
rsync到文件的压缩存档
我使用rsync备份服务器,但是这些备份非常大,我想对其进行压缩。有没有一种方法可以在rsync周围进行某种包装,从而在备份文件中压缩文件,从实时文件rsync更改,然后在复制文件后立即重新gzip? 也就是说,如果在现场的源文件是富,酒吧和巴兹,备份有foo.gz,bar.gz和baz.gz。 重申一下:我想要在一端压缩文件,而在另一端压缩文件。我不想在rsync之前进行压缩,因为即使使用--rsyncable,它也会降低rsync的效率。我知道rsync的-z选项。我的备份计算机上没有空间来存储所有未压缩的文件。
11 backup  rsync  gzip 

3
我不小心压缩了整个服务器
好吧,如果有人想扮演上帝并创造奇迹,我会失望的。 因此,我的任务是制作一个脚本,该脚本可以找到6个月以上的文件,将其压缩然后删除。在制作该脚本的过程中,我运行了此命令: find / -type f -mtime -400 ! -mtime -180 | xargs gzip blablabla 这给每个单文件一个.gz扩展名。现在我一发现就撤消了,但是为时已晚。命令完成后,我的bash命令都不起作用,因为$ PATH变量已清空。在意识到问题所在之前,我尝试了很多事情。 因此,请解压缩我仍然无法启动的所有内容。在遵循网上指示进行以下操作后,我设法使其得以抢救: root (hd0,0) setup (hd0) kernel (hd0,0)/boot/vml[...] initrd (hd0,0)/boot/initrd.im[...] 在将我的Linux部分启动之后,却给我以下错误: Begin : Running /scripts/init-bottom ... mount : mounting /dev on /root/dev failed : No such file or directory mount: mounting /sys/ on /root/sys …
10 linux  boot  gzip 

4
如何最有效地在Linux Web服务器上存储和提供1,000,000+个小的gzip压缩文件?
我必须通过基于Linux的Web服务器提供大量静态内容。它是一组超过一百万个小的gzip文件。90%的文件小于1K,其余文件最大为50K。将来,这可能会增长到超过1000万个gzip文件。 我应该将这些内容放在文件结构中还是应该考虑将所有这些内容都放在数据库中?如果它处于文件结构中,我可以使用大目录还是应该考虑使用较小的目录? 有人告诉我文件结构可以更快地交付,但另一方面,我知道文件会在磁盘上占用很多空间,因为文件块将超过1K。 关于交付绩效的最佳策略是什么? 更新 作为记录,我已经在Windows 7下对50万个文件进行了测试:


3
在某些IIS7 web.config压缩设置方面需要帮助
我正在尝试在web.config文件中配置IIS7压缩设置。我正在尝试使HTTP 1.0请求成为gzip。 MSDN 在这里提供有关它的所有信息。 是否可以在我自己的网站的web.config文件中拥有此配置信息?还是我需要在应用程序级别进行设置?目前,我在web.config中有该代码... <system.webServer> <urlCompression doDynamicCompression="true" dynamicCompressionBeforeCache="true" /> <httpCompression cacheControlHeader="max-age=86400" noCompressionForHttp10="False" noCompressionForProxies="False" sendCacheHeaders="true" /> ... other stuff snipped ... </system.webServer> 它不起作用:( HTTP 1.1请求正在被压缩,只是没有被压缩1.0。 上面的MSDN页面说它可以在:-中使用 Machine.config ApplicationHost.config 根应用程序Web.config 应用程序Web.config 目录Web.config 那么,我们能否以编程方式在web.config文件中基于每个网站设置这些设置?(这是一个Application Web.config文件...)我做错了什么? 欢呼:) 编辑:我被问到我怎么知道HTTP1.0没有被压缩。我正在使用“失败的请求跟踪规则”,该规则会报告: DYNAMIC_COMPRESSION_START DYNAMIC_COMPRESSION_NOT_SUCESS Reason: 3 Reason: NO_COMPRESSION_10 DYNAMIC_COMPRESSION_END


3
IIS 7.5忽略web.config中的HttpCompression设置
我正在尝试为mime类型启用动态压缩application/json。 在applicationHost.config中,我进行了以下更改: <section name="httpCompression" allowDefinition="AppHostOnly" overrideModeDefault="Allow" /> 我还尝试使用以下命令解锁该部分: appcmd unlock config /section:system.webserver/httpcompression 我的web.config设置(与applicationHost.config相同,但具有其他mimetype): <httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files"> <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" /> <staticTypes> <add mimeType="text/*" enabled="true" /> <add mimeType="message/*" enabled="true" /> <add mimeType="application/x-javascript" enabled="true" /> <add mimeType="application/atom+xml" enabled="true" /> <add mimeType="application/xaml+xml" enabled="true" /> <add mimeType="*/*" enabled="false" /> </staticTypes> <dynamicTypes> <add …

2
Apache:发送预压缩的gzip文件
我希望Apache通过网络发送gzip'ed的静态文件,但也希望Apache不能总是一遍又一遍地gzip化它们。因此,我认为如果存在.gz文件,是否无法提供该文件。此设置: 文件结构: static/ | |--- style.css | \--- style.css.gz .htaccess中的以下内容: mod_rewrite规则: RewriteCond %{REQUEST_FILENAME}.gz -s RewriteRule ^(.+) $1.gz [L] 而这个设置: AddEncoding x-gzip .gz 实际上,如果请求转到,则在发送.gz文件而不是.css的情况下,此方法有效/static/style.css。唯一的问题是,文件以“ application / x-gzip”而不是“ text / css”的形式提供。使用mod_rewrite的T标志不会改变它。明确的也没有 AddType text/css .css 有谁知道我如何实现期望的行为?还是出于某种我没想到的原因而不必要? 编辑:还有一个额外的困难:将原始文件发送给不带gzip支持的客户端。有谁知道这如何工作?

2
为什么Apache不会gzip具有参数的css或js文件?
启用了mod_deflate的apache无法压缩某些CSS和JS文件。该文件在YSlow中看起来像“ [domain.name] /aggregator.css?...”或“ [domain.name] /misc/jquery.js?...”。其他CSS和JS不含“?” 被压缩。请解释一下如何使apache也压缩此文件。 我在.htaccess文件上添加了以下行 <IfModule mod_deflate.c> <FilesMatch "\.(css|js|x?html?|php)$"> SetOutputFilter DEFLATE </FilesMatch> </IfModule> 谢谢
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.