gpt4 book ai didi

nginx - nginx的访问日志的编码格式是什么?

转载 作者:行者123 更新时间:2023-12-05 07:52:15 39 4
gpt4 key购买 nike

Nginx的access.log的编码是什么?我正在尝试遍历文件,但我的脚本 raises an exceptionUTF-8 中的无效字节序列”当它发现对我的服务器的请求中包含中文/泰文字符时。

最佳答案

HTTP 协议(protocol)请求主要是 ASCII,数据字段允许是任何八位字节。参见 Which encoding is used by the HTTP protocol? .

Nginx 的错误和访问日志将反射(reflect)这一点。

我对来自一个小型北美站点的 450,000 条记录的经验表明,除了一条记录外,所有记录都可以无误地解码为 ASCII。该记录包含 4 个连续字节 (b'\xb8E\x8c\xde'),它们是无效的 UTF-8 但有效的 big5hkscs(Python 的繁体中文编解码器)产生了两个字形。

参见 How can I programmatically find the list of codecs known to Python?获取用于对非 ASCII 位进行暴力攻击的编解码器名称列表。

将二进制日志记录解码为 ASCII,使用 '?'替换错误,足以满足我的需求。

关于nginx - nginx的访问日志的编码格式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33986569/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com