XAMPP在输出之前会转到index.php三次


XAMPP goes to index.php three times before output?

我正试图在我的CMS中创建一个安全连接,方法是将生成的令牌保存在PHP中的$SESSION变量中,同时将另一部分回声到存储令牌客户端的脚本标记中。每当我对index.php进行请求时,生成的内容都会被更新并回显到页面上。

我面临的问题是,我生成并更新了$SESSION变量3次,而只回显了一次脚本标记。

首先,我认为这是因为我的代码出现了错误。我用PHP遍历模板文件中的每一行,以获得某些标记。当找到这些标签时,我会回显数据库中的一些数据。

我创建了一个名为"toLogfile"的函数,该函数使用file_put_contents,从而将一行文本记录到XAMPP服务器文件夹中的文件中。

我一直在向后登录,以找到罪魁祸首,并最终返回到我的index.php。这个文件所做的只是包括一些类文件,然后执行"start_app"函数,该函数生成我的页面。

日志记录在index.php上仍然会发生三次,而我在Chrome中只有一次F5。我使用的是Apache服务器的mod_rewrite模块。

当我只请求页面一次时,为什么整个函数被调用三次,有什么解释吗?我已经搜索这个bug大约2个小时了,据我所知,我想不出解决方案?

仅从一次"运行"中记录文件:

2016-04-07 21:28:23 | index.php | 'data' = START APP!
2016-04-07 21:28:23 | page_controll.php | 'data' = PAGE PARSER SESSION SECURITY TOKEN: 5706b4d79766a
2016-04-07 21:28:23 | index.php | 'data' = APP DONE!
2016-04-07 21:28:24 | index.php | 'data' = START APP!
2016-04-07 21:28:24 | page_controll.php | 'data' = PAGE PARSER SESSION SECURITY TOKEN: 5706b4d883dc2
2016-04-07 21:28:24 | index.php | 'data' = APP DONE!
2016-04-07 21:28:24 | index.php | 'data' = START APP!
2016-04-07 21:28:24 | page_controll.php | 'data' = PAGE PARSER SESSION SECURITY TOKEN: 5706b4d8a84c1
2016-04-07 21:28:24 | index.php | 'data' = APP DONE!

经过很长时间的搜索,这似乎是因为我的模板中有一些空的图标链接标签:

<link id="favicon_shortcut_tag" rel="shortcut icon" href="" type="image/x-icon">
<link id="favicon_tag" rel="icon" href="" type="image/x-icon">

这导致浏览器对同一个url执行多个请求。

当然非常合乎逻辑,但发现它非常困难-,-