相关疑难解决方法(0)

Internet Explorer 8 + Deflate

我有一个非常奇怪的问题..我真的希望有人有答案,因为我不知道还有什么要问的.

我正在用C++编写一个cgi应用程序,它由Apache执行并输出HTML代码.我自己压缩HTML输出 - 从我的C++应用程序中 - 因为我的Web主机由于某种原因不支持mod_deflate.

我用Firefox 2,Firefox 3,Opera 9,Opera 10,谷歌Chrome,Safari,IE6,IE7,IE8,甚至wget测试了它.除了IE8之外,它适用于任何东西.

IE8只是说"Internet Explorer无法显示网页",没有任何信息.我知道这是因为压缩只是因为它可以工作,如果我禁用它.

你知道我做错了什么吗?

我使用zlib来压缩它,确切的代码是:

    /* Compress it */
int compressed_output_size = content.length() + (content.length() * 0.2) + 16;
char *compressed_output = (char *)Alloc(compressed_output_size);
int compressed_output_length;
Compress(compressed_output, compressed_output_size, (void *)content.c_str(), content.length(), &compressed_output_length);

/* Send the compressed header */
cout << "Content-Encoding: deflate\r\n";
cout << boost::format("Content-Length: %d\r\n") % compressed_output_length;
cgiHeaderContentType("text/html");
cout.write(compressed_output, compressed_output_length);


static void Compress(void *to, size_t to_size, void *from, size_t from_size, int *final_size)
{
int ret;
z_stream stream; …
Run Code Online (Sandbox Code Playgroud)

c++ compression apache cgi internet-explorer-8

5
推荐指数
2
解决办法
4413
查看次数

标签 统计

apache ×1

c++ ×1

cgi ×1

compression ×1

internet-explorer-8 ×1