lighttpd - Lighttpd mod_accesslog 管道进程
问题描述
我使用 Lighttpd 提供静态文件,并且在每次请求时我都想记录客户端的 MAC 地址。为此,我一直在尝试将mod_accesslog
与管道记录器一起使用,如下所示lighttpd.conf
:
accesslog.filename = '|/path/to/python/script.py'
我假装执行获取 MAC 地址的脚本,然后写入日志。
目前我收到一个 Lighttpd 错误:
2018-05-17 21:37:22: (mod_accesslog.c.180) writing access log entry failed: |/path/to/python/script.py Broken pipe
并且日志目录(包含 python 脚本)具有以下权限:
drwxrwsr-x 2 root www-data 4096 May 17 21:36 log
另外,如果有人知道,将参数传递给(python)脚本的格式是什么?万一我想做的事情是可能的。
解决方案
管道记录器没有参数。lighttpd 将每个日志行写入管道,管道记录器读取 stdin 上的行。
顺便说一句,我不知道您为什么要尝试记录 MAC,或者您认为从哪里获取它。
推荐阅读
- java - 如何在我的程序中只创建一个 Scanner 对象
- angular - 我可以在Angular插值之前获取元素的内部html吗
- c# - 当下拉列表基于 Jaus Gridex 中的其他列值触发时,如何过滤列的 ValueList?
- java - 如何将自定义参数添加到通过 maven Surefire 插件生成的 junit 报告中?
- angularjs - 如何在 AngularJS 中实现 azure B2C Sign_In 策略?
- mysql - MySQL 从两个不同的表中获取结果
- php - mysqli_connect(): (HY000/1045): Access denied for user... - mysql shell 工作
- angular - 路由模块中的装饰器不支持函数调用
- ruby-on-rails - 渲染向导或视图取决于我在 Rails 中的选择输入
- reactjs - React Hook useEffect 缺少依赖项:'props'。包括它或删除依赖数组。useEffect 中的道具没有数据