我正在运行nginx和PHP 5.5,并且当传递的字符串很长时,所有error_log
消息都会被截断。
我已经更新了我的php.ini
文件,并将日志最大长度从1024增加到0(没有最大值)并且它仍在发生。
答案 0 :(得分:5)
如果希望日志行超过2048字节,则需要重新编译Nginx。来自http://wiki.nginx.org/HttpLuaModule:
Nginx核心中的错误消息存在硬编码长度限制。它最多为2048字节,包括尾随换行符和前导时间戳。您可以通过修改Nginx源树中src / core / ngx_log.h文件中的NGX_MAX_ERROR_STR宏定义来手动修改此限制。如果邮件大小超过此限制,Nginx核心将自动截断邮件文本。
答案 1 :(得分:1)
1024字符限制在php-fpm中是硬编码的,你需要重新编译它。
如果你想要超过2048个字符,你也需要重新编译nginx。
这里有一个包含8192个字符的补丁的完整解决方案: https://forums.freebsd.org/threads/56543/