我们最近遇到了一个问题,我们的服务器开始抛出 500 错误,因为一个 IP 地址被阻止了,而这个 IP 地址已经在其他地方被阻止了。看来,这个 IP 之前在个别网站上被阻止了,然后被添加到服务器中。我想知道这个错误是如何触发的,但这是另一个问题。
是否可以找到添加这些块时的日志?
答案1
Windows 事件日志中没有此类操作的日志条目。
但是假设您使用的是 IIS 7+,并且更改不是在本地 web.config 文件中进行的,那么可能有一种方法可以找出配置更改发生的时间。
打开“C:\inetpub\history”(您可能需要以高级管理员身份执行此操作)其中有一堆 CFGHISTORY_00000xxxxxx 文件夹。
每次通过 GUI、脚本或 API 对 IIS 进行配置更改时,配置文件的先前版本都会保存在这里。
IP 限制存储在 applicationHost.config 中,您可以使用 DIFF 工具比较文件或手动查看“ipSecurity”部分(通常位于文件末尾)。
这可能会告诉您更改的时间,但不会告诉您更改者。您可以检查在同一时间段内登录到服务器的用户的事件日志。
存储一定数量的变更集并自动删除旧的历史文件夹。
编辑:如果您想保留更多历史记录条目,请使用:
appcmd.exe set config -section:system.applicationHost/configHistory /maxHistories:"50" /commit:apphost