我有一些网站,我们主要使用 mod_rewrite 来 301 将旧链接重定向到新的相关页面。
问题是,我们现在每个站点都有数千条规则,其中一些非常晦涩,并且已经存在多年。然后有一些相互干扰和/或创建循环。多么有趣。
我想做的是记录一段时间的 mod_rewrite - 比如说几周,然后解析这些日志以找到已使用的实际重定向,然后删除任何未使用的重定向。
问题是:
a) 它会创建非常大的日志文件,因为它会为每个请求记录至少一行(如果您使用的是更有用的日志级别,则为 2 行),即使它只是通过。
b)日志不是很有帮助 - 有用的行似乎是说:
1.2.3.4 - - [15/Aug/2013:03:23:57 +1000] [www.mysite.com/sid#2b5174473a38][rid#2b51748a42d0/initial] (2) rewrite '/pete' -> '/pete-website/'
但由于几乎每一行都有短语“(2) rewrite”,因此很难找到有用的。
我想我需要使用 grep 将日志缩减为有用的内容,然后使用脚本来解析重写规则并找到哪些没有被使用?
我想真正的问题是,在这种情况下我肯定不是唯一的,但我找不到其他人询问它或在网络上的其他任何地方找到答案 - 有人有任何想法吗?
谢谢!