zlib 相关问题

zlib是一个用于数据压缩的库。也是许多软件平台的重要组成部分,包括Linux,Mac OS X和iOS

Python 相当于 unix cksum 函数

我一直在寻找unix cksum命令的等效python方法: http://pubs.opengroup.org/onlinepubs/7990989775/xcu/cksum.html $ cksum ./temp.bin 1605138151 712368 ./temp.bin 所以...

回答 3 投票 0

解码 Base64 和 Inflate Zlib 压缩 XML

抱歉这篇文章很长,我会尽量缩短。 我正在使用一个 json API(当然它的文档为零),它返回如下内容: { 未压缩长度:743...

回答 3 投票 0

C++ zlib deflate/inflate 和 z_stream 参数

在我了解(在一些帮助下...)zlib 库的压缩和解压缩功能如何工作之后,我现在尝试了解 deflate 和 inflate 是如何工作的。据我了解,压缩...

回答 1 投票 0

如何修复在 CI 上下载 chrome-headless-shell 时 puppeteer 间歇性失败的问题

我正在使用一个大型 monorepo,它使用 puppeteer 进行测试。在本地安装依赖项工作正常,但 puppeteer 无法在 CI(AWS codepipeline/codeBuild)上间歇性下载...

回答 1 投票 0

C++如何解压文件

我找到了这段代码来解压缩文件: #包括 #define CHUNK_SIZE 16384 // 16 KB bool unzipFile(const char* zipFileName, const char* extractFileName) { // 打开输入文件(comp...

回答 1 投票 0

如何在 Nodejs 应用程序中解压缩 gzip 压缩的 http 主体?

首先,我尝试了在网络上任何地方都可以找到的所有方法,包括SO相关问题的答案,但无法使任何工作发挥作用。这就是为什么我要问一个新问题。 我用的是Lua

回答 1 投票 0

Powershell 中的 Zlib 压缩

我需要在PowerShell中将字符串压缩到Zlib。 有没有一种方法可以在 PowerShell 中使用 ZLibStream 类进行压缩? https://learn.microsoft.com/en-us/dotnet/api/system.io.compression.zlibst...

回答 1 投票 0

链接器找不到 zlib 或 OpenSSL?

我正在尝试使用本指南编译共享对象。 https://github.com/KxSystems/kafka/blob/master/docs/install.md 运行“make”时,我在第 2 步失败了。我已经设置好了一切

回答 1 投票 0

无法使用 TZDecompressionStream 解压缩压缩文件

我正在使用 Delphi 11 Community Edition,我遇到了 zlib 主要是 TZDecompressionStream 的问题,并显示消息“无效的 zstream 操作”。

回答 1 投票 0

无法使用 TZCompressionStream 解压缩压缩文件

我正在使用 Delphi 11 Community Edition,我遇到了 zlib 主要是 TZDecompressionStream 的问题,并显示消息“无效的 zstream 操作” 为你鸣叫 无法解压

回答 1 投票 0

静态构建 zlib 的未解析外部符号

我在VS2022。我正在我的 C++ 项目中创建一个小型静态库来处理嵌入式资源(所以我们称其为呃)。 该库使用zlib(最新版本,1.3.1)来压缩之前的文件

回答 1 投票 0

如何解压lz4压缩的操作系统镜像并写入磁盘

我正在尝试使用 pycurl 获取操作系统映像并将解压缩的数据写入磁盘。使用 gzip 很简单,只有使用 lz4 格式时我遇到问题,似乎 write_lz4(buf) 解压缩...

回答 1 投票 0

7-zip Deflate 和 zlib.compress() 有什么区别?

大家好 我试图理解 Deflate 压缩,但从我所看到的情况来看,我认为我误解了或做错了什么。 所以我获取了 7zip 的源代码,这样我可能会理解......

回答 1 投票 0

gnu gzip 解压明显慢于 zlib

GNU gzip 和 zlib 是由同一作者编写的。然而,我注意到两者之间的解压速度差异很大。 例如,用 gnu gzip 解压 linux.tar.gz ...

回答 1 投票 0

字典是否曾经与 DEFLATE 压缩一起使用过?

ZLIB 格式允许使用预设字典来启动 deflate 算法。这个功能在任何地方都使用吗?是否有使用该功能的文件格式或网络协议等?

回答 1 投票 0

ZLIB 中是否曾使用过 FDICT 和 DICTID

ZLIB 格式允许使用预设字典来启动 deflate 算法。这个功能在任何地方都使用吗?是否有使用该功能的文件格式或网络协议等?

回答 1 投票 0

Zlib Gunzip 仅返回部分文件

我有一个 27MB 的 .gz 文件(解压后 127MB)。使用 ruby 的 Zlib 解压缩文件会返回格式正确的数据,但文件被截断为预期大小的一小部分(1290 行数据......

回答 2 投票 0

gzdecode() 内存不足 - 大小已耗尽

您知道在 php 中解压大型 .gz 的任何解决方案吗(>200 MB .gz,>4GB 原始...可能在 >1GB 或 >2GB 的包内)? 需要逐部分解码.gz 的解决方案。 代码 gz解码(@

回答 2 投票 0

ZLIB 在压缩和解压后返回不同的字节值

我有一个 3d ndarray,我想使用 Zlib 解压缩。 我用这部分代码来压缩。 开始 = 0 块大小 = 1024 compressImage = bytes('', 'utf-8') 开始时 < len (nii_img1_data)...

回答 2 投票 0

注意:ob_end_flush():无法发送 zlib 输出压缩缓冲区 (1) in

我在本地主机上没有任何问题。但是当我在服务器上测试我的代码时,我在每个页面的末尾看到此通知。 我的代码: 我在本地主机上没有任何问题。但是当我在服务器上测试我的代码时,我在每个页面的末尾看到这个通知。 我的代码: <?php ob_start(); include 'view.php'; $data = ob_get_contents(); ob_end_clean(); include 'master.php'; ob_end_flush(); // Problem is this line 我不建议完全禁用 wp_ob_end_flush_all() 功能,并且我绝对不会在 zlib.output_compression 文件中关闭 php.ini。这是一种更好的方法,可以替换导致问题的源代码,并保留底层功能: /** * Proper ob_end_flush() for all levels * * This replaces the WordPress `wp_ob_end_flush_all()` function * with a replacement that doesn't cause PHP notices. */ remove_action( 'shutdown', 'wp_ob_end_flush_all', 1 ); add_action( 'shutdown', function() { while ( @ob_end_flush() ); } ); 有关原因的更多详细信息以及为什么这可能是最好的方法可以在此处找到:WordPress ob_end_flush() 错误的快速修复 WordPress 尝试在关闭时刷新输出缓冲区。失败是因为您已经调用了 ob_end_flush()。 您应该能够保持压缩状态,并且只需松开冲洗操作即可: remove_action( 'shutdown', 'wp_ob_end_flush_all', 1 ); 您现在可以手动调用 ob_end_flush(),并保持 zlib 压缩。 在php.ini中关闭zlib.output_compression时解决了 zlib.output_compression = Off 出于安全原因,您应该始终禁用实时网站上的正面错误 - 无论如何。 如果您想隐藏 Wordpress 中的错误并获取错误日志以供查看,您可以在 wp-config.php 文件中执行以下操作: // Enable WP_DEBUG mode define( 'WP_DEBUG', true ); // Enable Debug logging to the /wp-content/debug.log file define( 'WP_DEBUG_LOG', true ); // Disable display of errors and warnings define( 'WP_DEBUG_DISPLAY', false ); @ini_set( 'display_errors', 0 ); PS:如果您想使用上面alexg的remove_action代码,remove_action('shutdown', 'wp_ob_end_flush_all', 1);您需要将其放在主题的functions.php文件中。 PPS:您可能还想尝试在 wp-config.php 文件中使用 define(‘WP_MEMORY_LIMIT’,’1024M’); - 但是,请注意不要分配超出需要的内容,因为这会影响 WordPress 的前端,并且您将运行如果页面同时点击太多,则存在内存耗尽的风险。 我发现我们客户的一个 WP 网站上的问题是由某个特定插件引起的。 在这种情况下,这是由“NextGEN Gallery”插件引起的,但奇怪的是,简单地停用然后激活该插件就解决了问题。 对于遇到此问题的其他人来说,值得寻找可疑的前端插件并尝试相同的方法。如果您发现问题插件重新激活后问题又出现,您应该向插件作者提出问题。 只需将其添加到主题functions.php文件中 remove_action( '关机', 'wp_ob_end_flush_all', 1 ); 另一种情况: 我在我的实时站点上收到此通知,但不在本地主机和临时/演示站点上收到此通知,即使演示站点与实时站点位于同一服务器上。 事实证明,zlib 扩展未在实时站点上激活,并且导致了该通知。一旦 zlib 扩展被激活,通知就不再出现。 因此不需要修复代码。 只需在关闭挂钩上使用您的代码并提前定位位置 默认的 ob_end_flush() 将识别你的输出并刷新它 add_action('shutdown', 'your_code', 0); function your_code(){ /* Your Code Goes here */ } 我尝试了一种有效的暴力方法(我对此不满意,但希望这可以帮助别人): 在 /wp-content/themes//functions.php 的最后一行(显然在 php 闭包 '?>' 之前)添加以下行: ob_get_clean(); 此错误可能是由于没有关闭而导致的 ?> 我在收到“插件在激活期间生成了意外输出的 X 个字符”错误然后激活调试后来到这里。我将 index.php 中的包含文件缩小为有/没有错误的目标文件。然后我进入该文件,并使用 PHP 标签关闭该文件,因为该文件内有许多函数。之后就工作了。 1.创建此文件: wp-content/mu-plugins/fix-zlib.php 创建mu-plugins文件夹(如果不存在) 2.将此代码复制到其中并保存 <?php /** * Fix zlib Error */ remove_action( 'shutdown', 'wp_ob_end_flush_all', 1 ); add_action( 'shutdown', static function () { $levels = ob_get_level(); for ( $i = 0; $i < $levels; $i ++ ) { @ob_end_flush(); } }, 9999999 ); 完成! 不要惊慌,就这么简单。只需打开函数 php 并找到此代码 ** * Flush all output buffers for PHP 5.2. * * Make sure all output buffers are flushed before our singletons are destroyed. * * @since 2.2.0 */ function wp_ob_end_flush_all() { $levels = ob_get_level(); for ( $i = 0; $i < $levels; $i++ ) { ob_end_flush(); } } 在您简单删除“ob_end_flush();”之后并替换此代码 remove_action( 'shutdown', 'wp_ob_end_flush_all', 1 ); 100%解决了。 替换这个 ob_end_flush() 替换为 remove_action( 'shutdown', 'wp_ob_end_flush_all', 1 ) ** * Flush all output buffers for PHP 5.2. * * Make sure all output buffers are flushed before our singletons are destroyed. * * @since 2.2.0 */ function wp_ob_end_flush_all() { $levels = ob_get_level(); for ( $i = 0; $i < $levels; $i++ ) { ob_end_flush(); } } 更新后的代码应该如下所示 function wp_ob_end_flush_all() { $levels = ob_get_level(); for ( $i = 0; $i < $levels; $i++ ) { remove_action( 'shutdown', 'wp_ob_end_flush_all', 1 ); } } 尝试禁用wordpress调试模式即可解决。 您可以在 /wp-config.php : 中禁用 WP 调试模式 define('WP_DEBUG', FALSE);

回答 14 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.