Ubuntu 下调试apache模块
网上搜索出来的大部分资料都是redhat系统下面的,在Ubuntu下面好像行不通,通过google之后发现以下方法可以调试,记录一下:
- 先把运行着的apache停了
- 切换到ROOT用户,主要是为了方便全局变量的使用,因为不切换的话,到时候用sudo去启动,apache就获取不到之前的全局变量
- 切换之后,执行命令把apache的全局变量导入"source /etc/apache/envvars"
- 运行gdb apache2
- 在进入了gdb之后,就可以设置断点了
- 设置完断点后,就可以启动apache了. 执行命令"run -X -k start -f /etc/apache2/apache2.conf"
上面的-X参数是指单进程运行apache.
快捷调试:
如果每次都需要设置重复的断点,可以把设置断点的语句保存到一个文件中。
然后在进去gdb后,直接用source命令,把那个文件导入即可。这样就可以省下很多设置断点的时间了。