>백엔드 개발 >PHP 튜토리얼 >想统计24小时内有哪些IP来访问过我的网站(LAMP),怎么实现?

想统计24小时内有哪些IP来访问过我的网站(LAMP),怎么实现?

WBOY
WBOY원래의
2016-06-06 20:09:131049검색

用什么语言都可以,最好perl或者PHP。

  1. 在网站首页加一个记录IP的功能。

  2. 直接分析Apaches的日志。

应该选1 还是 2?

我现在的想法,选2.

但,实际怎么写?最好perl或者PHP。

谁能写个样子出来?

回复内容:

用什么语言都可以,最好perl或者PHP。

  1. 在网站首页加一个记录IP的功能。

  2. 直接分析Apaches的日志。

应该选1 还是 2?

我现在的想法,选2.

但,实际怎么写?最好perl或者PHP。

谁能写个样子出来?

两种方法目前都在用

  1. 用的piwik,原理是在页面上埋下JS代码片段,页面被访问后发ajax请求到服务端进行统计。优点是易部署,易统计。缺点是侵入性,即要破坏页面的原来的结构(至少要加一段代码);同时也受制于客户端,客户端如果关闭JS,或者请求发送失败,都会导致统计失效。
    piwik是自己部署的,也可以使用cnzz, 腾讯统计,量子统计等第三方的服务,免费的。

  1. 统计日志,这个方案原理是把访问的日志收集起来并分析得到结果,我现在用的是awstats,这货用起来可以完成基本的统计任务,但是如果不做详细设置的话,统计的结果可能不是很理想。另外因为日志累积起来容量很大,一个日访问百万左右的站点,得到的日志可能都是G级别的,为了不影响主站点的web服务,大多数情况是把日志汇总到另一台服务器去计算,每天同步几个G甚至是几十G或者更多的日志,这对网络有较高的要求。当访问量再大一些,同时对访问量实时性有要求后,就需要实时回传日志,实时统计了,这时候就要部署消息传递系统了,有一套开源的较为成熟的方案是ELK,分别是elstackSearch,logstatsh,kibana。当需要实时回传时,再搭配消息传递机制以及redis缓存服务,想想就是不一般的复杂,不过部署完之后有点高科技的感觉……

以上是针对中小型的站点的一些访问量统计方案的个人理解,有些地方可能有误解,仅供参考。

对于大型站点,应该因站而异了吧。

我知道的有统计网站,cnzz链接。题主可以参考。

百度统计 腾讯统计都可以啊

http://tongji.baidu.com

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.