如果用户禁用了JS, Apache可以记录日志吗?

Can Apache log if users have JS disabled

本文关键字:记录日志 Apache 用户 JS 如果      更新时间:2023-09-26

我们想知道我们的网站访问者中有多少禁用了JS,以帮助我们决定是否应该开发我们的新网站设计的非JS版本。这在Apache 2.2中是可能的吗?

使用<noscript>标记,如果启用了js,则该标记中的块将不会被浏览器使用。

然后用它来加载一个特定的url,然后你就可以在你的apache日志中跟踪这个url。一个图像可能会做的技巧(自动从浏览器获取),从未测试过,但我认为它不应该被加载,如果js是启用的。

<script type="javascript">
   (...) here anything you could want in js, or maybe nothing as well
</script>
<noscript>
    <IMG SRC="http://mysite.com/nojs.png" width="0" height="0" alt="nojstracking">
</noscript>

不,这是相当基本的,从用户的每个页面请求加载,你不能跟踪所有请求nojs.png是不同的web用户,你不能比较它的请求总数,你的网站(你应该非常小心这个图像响应头的缓存设置)。也许您需要在<script>部分加载一个不同的图像,以便您可以更容易地比较有多少人请求第一个与第二个。

为了获得更准确的结果,你需要更先进的东西,用服务器端程序(PHP, Java?)捕获这些图像url,处理会话cookie,并跟踪现有会话,你将在服务器端程序中有更多的控制日志跟踪,而不仅仅是在Apache中(这是一个已经活跃的会话,一个新用户,我已经认识的人,等等)