2012-04-03 41 views
5

我正在一个主要想法是在一个循环(或类似构造的循环)中执行大量xmlHttpRequests的网站上工作。但事情是,我每次访问我的服务器上的文件从javascript它登录访问日志在服务器。随着时间的推移,访问日志文件会变得如此之大,从而减慢了进一步的请求。防止(停止)Apache记录特定的AJAX/XmlHttpRequests?

有没有办法告诉Apache(我猜)不记录访问这个文件,如果它的正确? (我正在向该文件发送带有密码的密码(总是不同)。) 对文件的访问将来自不同的IP。 我不想停止所有日志记录,只是“已批准”日志。

+1

我从来没有听说日志记录变慢,因为日志文件太大。 – Gabe 2012-04-03 22:32:47

+0

尝试做每秒超过20访问可以说15分钟不休息...访问日志文件变大... – 2012-04-03 23:29:31

+1

我并不否认日志会变大(虽然每秒钟20行听起来不像太多),只是我没有看到一个大的日志文件将如何减慢Web服务器。 – Gabe 2012-04-04 06:47:36

回答

9

没问题。看看Apache's documentation的例子(如果你将来遇到与apache有关的问题,你可能会想看看这个例子)。 例如:

# Mark requests for the AJAX call 
SetEnvIf Request_URI "^/myajaxscript\.php.*$" dontlog 
SetEnvIf Request_URI "^/myotherajaxscript\.php$" dontlog 
# Log what remains 
CustomLog logs/access_log common env=!dontlog 
+0

我阅读了Apache文档并理解了您的评论,但是如果我只想防止记录没有设置新CustomLog的.php脚本呢?我的网站位于Hostgator上,我不知道或想要更改访问日志设置的其余部分。是否可以添加一个条件? – JohnnyBeGood 2017-08-18 10:44:04