【问题标题】:Prepend PHP file to all pages将 PHP 文件添加到所有页面
【发布时间】:2011-04-02 07:20:19
【问题描述】:

我有一个分析文件(在 php 中),我想将它添加到我网站上的每个页面,以便我可以监控访问了哪些页面。我将如何设置我的 .htaccess 文件来实现这一点?

目前我有:

<Files "*">  
php_value auto_prepend_file /analytics.inc.php  
</Files>

但它没有按预期工作。

另外,如果有人能建议一种更简单的方法来收集网站分析数据,我会全力以赴。

编辑:
我希望将分析文件添加到所有(子)目录中的所有文件中。目前只有根目录的文件是前置的。

【问题讨论】:

    标签: php regex .htaccess analytics prepend


    【解决方案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 的理解——也许我错了。
    猜你喜欢
    • 2016-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多