将 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】:

尝试删除 &lt;Files "*"&gt;&lt;/Files&gt; 并执行以下操作:

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 文件添加到所有页面的主要内容,如果未能解决你的问题,请参考以下文章

如何将所有选定的文件添加到一个文件夹中并在php中压缩

将 PHP 页面添加到 Wordpress 模板

text 如果用户未登录,则仅显示维护模式。将maintenance.php文件添加到wp-content文件夹以自定义维护页面。

将PHP文件包含到HTML文件中[重复]

apache htaccess 不会将 https://www 添加到除 inside.php 之外的任何页面

将 PHP 文件添加到 wordpress - Header() 已发送