2012-05-03 33 views
0

我在压缩我的网站时遇到问题。我的主机(www.one.com)不支持gzip,因此我通过其他方式联系他们以压缩我的网站。首先,我跟一位支持者说,由于他们的服务器是使用zlib设置的,因此无法完成。所以我GOOGLE了zlib,并在那里有关于这个问题的一些提示。如何使用zlib和zpipe.c压缩我的.php网站

我尝试添加:

php_flag zlib.output_compression on 
php_value zlib.output_compression_level 5 

到我的.htaccess文件,巫引起浏览器渲染: “内部服务器错误”。

然后我试图与他们谈话再次,这一次,我指着这个网站:http://www.zlib.net/zlib_how.html

的问题是,我还没有碰到过的zlib既不也不zpipe.c面前。我试图谷歌它,并环顾不同的论坛,但我不明白。 任何人都可以给我一些关于如何让这个工作的指针?我如何实现zpipe.c?我在这里是一个完整的菜鸟,所以我会很感激一步一步的指导。

我的网站以.php

回答

0

首先writen我跟那个告诉我,这是办不到的, 因为他们的服务器设置与zlib的支持者。

这听起来像他们不知道他们在说什么。你使用的是什么http服务器? Apache的?不管它是什么,它都应该支持使用gzip或“deflate”内容编码预压缩你的html。你需要找到一个支持你的服务器的人,知道他们正在谈论。

zlib是一个压缩例程库,可以压缩为gzip或“deflate”内容编码。

我一直把deflate放在引号中的原因是HTTP标准调用zlib格式“deflate”。它有时与原始的deflate混淆,并且是您应该始终使用gzip进行http传递的原因,因为在这种情况下没有歧义。

更新:

由于您使用的是Apache,你可能得到这个没有你的托管公司的帮助下工作。你可以把Apache directives to mod_deflate你的.htaccess文件。这是一个example

+0

是的,我使用Apache,谢谢你的回答。我想这留下了两个选择,要么改变我的托管公司,要么接受我的网站没有被压缩的事实,因为我没有时间或精力在这一点上进入zlib。 –

2

这就是我做的,我使用one.com作为托管公司。

我加入这一行到我的索引文件:

<?php 
    ini_set("zlib.output_compression", "On"); 
    ini_set("zlib.output_compression_level", "-1"); 
    ?> 

这增加了压缩在我的整个网站:) myvotebooth.com

然后我加入到这一点我的.htaccess文件

<IfModule mod_deflate.c> 
<FilesMatch "\.(js|css|html)$"> 
SetOutputFilter DEFLATE 
</FilesMatch> 
</IfModule> 

通过这样做,我得到一个响应标题:

Web page compressed? Yes 
Compression type? gzip 
Size, Markup (bytes) 11,329 
Size, Compressed (bytes) 3,187 
Compression % 71.9 

我也尝试压缩更多-2 -3 -4 -5但是一个。com只允许-1