首页  >  文章  >  后端开发  >  用GDB调试nginx

用GDB调试nginx

WBOY
WBOY原创
2016-08-08 09:24:411528浏览

<code>阅读源码的最好方式就是跟踪调试代码,这里介绍了如何利用GDB调试nginx的配置和步骤。
</code>

修改配置文件

<code>修改nginx.conf:
</code>
<code><span>#user  nobody;</span>
master_process <span>off</span>;
daemon <span>off</span>;</code>

daemon off;表示关闭守护进程模式,这样就免除了用GDB跟踪fork出的子进程了。如果默认启用守护进程,标准输出是被关闭的。因此关闭守护进程模式能够利用printf方便查看变量的值。
master_process off;表示用master进程自身来处理请求。

调试代码

<code>调试nginx和调试简单的单文件程序基本相同,只是在设置断点时有点差别。
在函数func_name处设置断点:`break func_name`,函数可以用<tab>键补全。
在file_name.c文件的第line行设置断点:`break file_name.c:line`
然后把代码跑起来就OK了,最常用的命令是backtrace,简写成bt。够简单吧,之后nginx的运行就都在你的掌控之中。
</tab></code>

以上就介绍了用GDB调试nginx,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn