php - 使用 PHP 将用户名放入 apache access_log 且不使用 HTTP 身份验证

标签 php apache http authentication logging

在 Apache 日志配置中,可以指定应记录 HTTP 身份验证用户名。大多数 PHP 脚本都有自己的基于 cookie 的身份验证。即使身份验证是基于 cookie 的,PHP 中是否可以为 Apache 提供 HTTP 身份验证用户名以进行日志记录?如果是,代码会是什么样子?如果不是,有哪些替代方案?

最佳答案

Apache 在注释 中的模块之间传递数据。如果将 PHP 作为 Apache 模块运行,则可以使用 apache_note()获取和设置笔记。然后您可以包括 the %{note_name}n log format string将其写入访问日志。这不会将任何数据“泄漏”回客户端。

在 PHP 中:

apache_note( 'username', $username );

在您的服务器配置中:

LogFormat "%h %l %{username}n %t \"%r\" %>s %b" common_with_php_username
CustomLog logs/access_log common_with_php_username

关于php - 使用 PHP 将用户名放入 apache access_log 且不使用 HTTP 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3389169/

相关文章:

html - Flutter,从网站获取特定图像

silverlight - 网络上的 Silveright 图像源未显示任何内容

javascript - 自动提交下拉值到数据库中

php - 'fi' 在数据库中显示不正确

javascript - 当尝试将上传文件的路径插入 MySQL 时,会创建重复文件

php - Doctrine 不会挽救一对多的关系

apache - 使用Apache Hadoop处理大量文本文件

Python Flask - 将 POST 数据添加到 sqlite 数据库

macos - 此服务器上禁止 : You don't have permission to access sompathm/a. jpg

security - 如果您使用 HTTPS,您的 URL 参数将不会被嗅探吗?