将 PHP 文件添加到所有页面
Posted
技术标签:
【中文标题】将 PHP 文件添加到所有页面【英文标题】:Prepend PHP file to all pages 【发布时间】:2011-04-02 07:20:19 【问题描述】:我有一个分析文件(在 php 中),我想将它添加到我网站上的每个页面,以便我可以监控访问了哪些页面。我将如何设置我的 .htaccess 文件来实现这一点?
目前我有:
<Files "*">
php_value auto_prepend_file /analytics.inc.php
</Files>
但它没有按预期工作。
另外,如果有人能建议一种更简单的方法来收集网站分析数据,我会全力以赴。
编辑: 我希望将分析文件添加到所有(子)目录中的所有文件中。目前只有根目录的文件是前置的。
【问题讨论】:
【参考方案1】:路径肯定不正确。它应该是文件系统脚的绝对路径。
如果有人能建议一种更简单的方法来收集网站分析数据,我会全力以赴。
您的网络服务器已经记录了每个请求。 您只需要每天解析这些日志并收集您需要的任何统计信息。
请注意,网络服务器会记录每个请求,因此,它有其优点和缺点。 它不仅会记录对 PHP 文件的请求,就像您的情况一样,还会记录静态文件,如图像、pdf 等。 但它也会记录页面上的每一幅图像,因此,对普通页面的一次请求将在日志文件中产生多达数百条记录。因此,您必须选择要分析的记录。
【讨论】:
很公平,但我有点想将访问时间和 IP 地址与用户凭据等相匹配。 @ServAce85 您可以为您制作 Web 服务器日志 cookie,您可以在其中存储这些凭据 对不起,显然我是这种东西的新手。我不完全理解“制作网络服务器日志cookie”是什么意思?您的意思是在日志中记录每个实例的 cookie 快照吗? @ServAce85 将 cookie 值添加到每个日志条目【参考方案2】:尝试删除 <Files "*">
和 </Files>
并执行以下操作:
php_value auto_prepend_file /analytics.inc.php
还要确保 analytics.inc.php 的路径正确,并且它与 .htaccess 位于同一目录中。
如果仍然无法正常工作,查看您的 apache 错误日志文件可能会有所帮助。
【讨论】:
感谢您的建议。最初我只有 'php_value...' 行,但这仅适用于当前工作目录。我希望涵盖所有可能的目录和文件列表。我知道analytics.inc.php文件路径是正确的,因为它正确地保存了这个根目录的结果,但不是其他的。【参考方案3】:尝试在 .htaccess 中给出 analytics.inc.php 文件的绝对路径。 IIRC,prepend 指令查找与您包含它的文件相关的文件。
【讨论】:
感谢@Jords 的贡献,但抱歉,我想我还不太清楚......这里有一个场景来解释我遇到了什么:如果访问者访问 www .example.com 他们的统计数据通过根目录的 .htaccess 文件指定的 analytics.inc.php 重新记录。但是,如果有人访问 www.example.com/example2/index.php,则不会记录他们的统计信息,因为该目录的 .htaccess 文件没有告诉它添加该文件。至少这一切都是基于我对 .htaccess 的理解——也许我错了。以上是关于将 PHP 文件添加到所有页面的主要内容,如果未能解决你的问题,请参考以下文章
text 如果用户未登录,则仅显示维护模式。将maintenance.php文件添加到wp-content文件夹以自定义维护页面。