修改nginx Web服务器的源代码

时间:2010-11-29 14:34:36

标签: c linux open-source nginx

我想修改Nginx的源代码(http://nginx.org/download/nginx-0.7.67.tar.gz) 所以当它服务一个文件(从磁盘读取文件)来计算服务的字节数并将它们存储在某个地方(或许是一个数据库) 因为我不太了解C(我是一个php开发人员),我很难在源代码中找到那个部分(必须看一会儿或其他什么) 任何人都可以帮助我吗? 谢谢

1 个答案:

答案 0 :(得分:5)

这是一种替代方法,可以访问您希望nginx提供的更安全的信息。

在您的访问日志中包含bytes_sent作为列。

如果您参考HttpLogModule,您会看到您可以将bytes_sent指定为访问日志中的列。将它与一个解析日志文件的PHP脚本结合起来(也许在它旋转之后)你就能避免使用c。

log_format sampleformatname '$remote_addr - $remote_user [$time_local]  '
            '"$request" $status '
            '"$http_referer" "$http_user_agent" "$bytes_sent"';

access_log  /path/to/logs/access.log  sampleformatname;

这种方法有一些好处:

  • 无需合并您的更改即可升级到较新版本的nginx。
  • 坚持使用你知道的工具(php)
  • 离线处理
  • 更简单,更安全