Hello! On Thu, Mar 20, 2014 at 9:49 AM, kobe zhang wrote: > 在cotent_by_lua 中分别再ngx.print 和 ngx.say 中 使用 /n //n ////n > ////////n 和\n \\n \\\\n \\\\\\\\n 都没输出换行,请问这是为什么, 很奇怪你并没有给出任何代码示例,毕竟 Lua 字符串常量有多种不同的写法。 当你在 nginx.conf 文件里面直接内联 Lua 代码时,你需要时刻记住你的 Lua 代码本身就是一个大 nginx 字符串常量。见这里的文档: https://github.com/chaoslawful/lua-nginx-module#special-pcre-sequences 对于你这里的问题,下面这些写法都是可以正确工作的: location = /t { content_by_lua ' ngx.print("ok 1\\n") ngx.print([[ok 2\n]]) ngx.print("end") '; } 访问 /t 会得到下面的输出: ok 1 ok 2 end 我们看到,换行符都起作用了。 Regards, -agentzh
Hello! On Thu, Mar 20, 2014 at 9:49 AM, kobe zhang wrote: > 在cotent_by_lua 中分别再ngx.print 和 ngx.say 中 使用 /n //n ////n > ////////n 和\n \\n \\\\n \\\\\\\\n 都没输出换行,请问这是为什么, 很奇怪你并没有给出任何代码示例,毕竟 Lua 字符串常量有多种不同的写法。 当你在 nginx.conf 文件里面直接内联 Lua 代码时,你需要时刻记住你的 Lua 代码本身就是一个大 nginx 字符串常量。见这里的文档: https://github.com/chaoslawful/lua-nginx-module#special-pcre-sequences 对于你这里的问题,下面这些写法都是可以正确工作的: location = /t { content_by_lua ' ngx.print("ok 1\\n") ngx.print([[ok 2\n]]) ngx.print("end") '; } 访问 /t 会得到下面的输出: ok 1 ok 2 end 我们看到,换行符都起作用了。 Regards, -agentzh --
Hello! 2014-03-20 19:45 GMT-07:00 kobe zhang: > Hi 春哥我的到输出是这样。使用是xshell > 我不清楚这和你的终端显示有什么关系。你可以把原始输出保存在文件,再用靠谱的方式检查。 Regards, -agentzh