thinkphp项目调试,如何配置log日志文件地址?
发布于 作者:苏南大叔 来源:程序如此灵动~

作为国内的phper
最受欢迎的框架,目前thinkphp
到了thinkphp5
时代。在本文中,苏南大叔要描述的是thinkphp
如何配置log
功能。当然,这里的log
指的是:记录访客访问数据到本地文件之中。如果,您在php
前方还配置了nginx
的话,其实这个thinkphp
的log
功能和nginx
的log
功能,两者在访客记录方面的功用是重合的。当然,两者也是有所区别的。

为什么要使用这个thinkphp
的log
功能呢?因为可以通过thinkphp
的日志功能,发现一些可疑的访问请求,您懂的。如果您在安全领域做事的话,这个log
日志文件就是非常好用的线索发现之地。本文测试环境:mac
/thinkphp@5.0.24完整版
。
配置源码
在ThinkPHP5.0.24
完整版源码中,默认是启用了这个log
的文件写入功能的。配置文件位置为:
application/config.php
:

其中,LOG_PATH
的默认值是这里配置的:thinkphp/base.php
:
意思就是默认日志文件会出现在runtime
目录下面的log
目录里面。

所以,如果您想要自定义LOG_PATH
的话,就需要在index.php
里面,定义一个常量LOG_PATH
即可。并且请给予相关目录写入权限。
public/index.php
:

相关链接:
更多log
设置
官方还给出了下面的更多设置项目,如果您有需求,可以再次深入探讨。

禁用log
这个thinkphp
自带的log
,其实是和nginx
的log
功能是有重合的。如果您需要,可以禁用掉这个log
功能。禁用的方法就是:设置type
为test
即可。
主动写入日志信息

ThinkPHP
对系统的日志按照级别来分类,并且这个日志级别完全可以自己定义,系统内部使用的级别包括:
log
常规日志,用于记录日志error
错误,一般会导致程序的终止notice
警告,程序可以运行但是还不够完美的错误info
信息,程序输出信息debug
调试,用于调试信息sql
SQL语句,用于SQL记录,只在数据库的调试模式开启时有效
相关链接
总结
这些日志里面,有访客访问日志,还有报错信息,甚至sql
记录等等。如果从这个层面上讲的话,可能nginx
的日志,就没有这个thinkphp
自带的日志大而全了。
当然,thinkphp
的日志不光可以写入到file
里面,还可以写入到其它地方。不过,也不在本文的讨论范畴内了。不要小看thinkphp
的日志文件功能,是非常的好用。在接下来的文章中,苏南大叔将要描述一个真实案例,如何从这个日志文件发现黑客入侵痕迹。
更多thinkphp
文章,请点击苏南大叔的博客:


