pixel实践
- 安装pixel
 - .安装node.js
 - wget http://nodejs.org/dist/v0.6.1/node-v0.6.1.tar.gz
 - 本地测试下载的是这个版本,如果要高版本的话可以找高版本的地址
 - tar zxvf node-v0.6.1.tar.gz
 - ./configure
 - 如果出现以下情况:
 - Checking for program g++ or c++ : not found
 - Checking for program icpc : not found
 - Checking for program c++ : not found
 - /home/admin/pkgs/node-v0.6.10/wscript:: error: could not configure a cxx compiler!
 - 解决办法是:
 - 安装gcc-c++
 - sudo yum install gcc-c++
 - 如果还有
 - Checking for openssl : not found
 - Checking for function SSL_library_init : not found
 - Checking for header openssl/crypto.h : not found
 - /home/admin/pkgs/node-v0.6.10/wscript:: error: Could not autodetect OpenSSL support. Make sure OpenSSL development packages are installed. Use configure --without-ssl to disable this message.
 - 解决办法:安装openssl-devel
 - sudo yum install openssl-devel
 - 然后,就可以正常编译安装了。
 - ./configure
 - make
 - sudo make install
 - node -v可以查看node的相关信息
 - .安装npm
 - curl http://npmjs.org/install.sh | sudo sh
 - 提示网址有问题的话就改为:curl https://npmjs.org/install.sh | sudo sh
 - 如果提示,找不到node,所以:再做一个软链接:
 - sudo ln -s /usr/local/bin/node /usr/bin/node
 - curl http://npmjs.org/install.sh | sudo sh
 - 可以正常运行。
 - .安装pixel
 - sudo npm install pixel-ping
 - 此时会在当前所在目录下生成一个node_modules目录,该文件夹下就是安装的pixel ping的相关文件。
 - .配置pixel
 - ()进入node_modules/pixel-ping目录,修改config.json文件。将config.example.json复制一份,重命名为config.json。然后打开,修改端口,将host修改为自己的对外的主机地址,如我自己本地虚拟机的是192.168.1.。修改相应后请求的方法参数endpoint,改为http://romy.redidai.com/save_hits.html。如果是上线服务器的话,就改域名可以了,后面的方法保持不动。
 - ()进入node_modules/pixel-ping/lib/下,修改pixel-ping.js文件。
 - 修改record方法。
 - store[key] || (store[key] = );此句后面增加的参数代码:
 - if (undefined != params.query.ip) {
 - store['ip'] = params.query.ip;
 - }
 - if (undefined != params.query.area) {
 - store['area'] = params.query.area;
 - }
 - if (undefined != params.query.keyword) {
 - store['search'] = params.query.keyword;
 - }
 - if (undefined != params.query.uid) {
 - store['uid'] = params.query.uid;
 - }
 - if (undefined != params.query.referer) {
 - store['referer'] = params.query.referer;
 - }
 - if (undefined != params.query.objClick) {
 - store['objClick'] = params.query.objClick;
 - }
 - .项目主要配置文件修改说明1
 - ()在 index.html中添加
 - <div class='hitImg'><img src="http://192.168.1.1:9187/pixel.gif?key=index_hit&ip={$clientIP}&area={$area}&uid={$uid}&referer={$httpReferer}&keyword=" alt=""/></div>
 - 将192.168.1.1改为跟config.json中的一致。
 - ()IndexAction.class.php文件中的pixel()方法就是追踪生成的logs日志方法。
 
pixel实践的更多相关文章
- UGUI全面实践教程
		
UGUI全面实践教程 试读文档下载地址:http://pan.baidu.com/s/1hq3UYGk 介绍:UGUI是Unity官方推出的最新UI系统.本教程为国内唯一的UGUI专向资料.本教程 ...
 - ASP.NET MVC5 网站开发实践(二) Member区域 - 添加文章
		
上次把架构做好了,这次做添加文章.添加文章涉及附件的上传管理及富文本编辑器的使用,早添加文章时一并实现. 要点: 富文本编辑器采用KindEditor.功能很强大,国人开发,LGPL开源,自己人的好东 ...
 - Glow Android 优化实践
		
了解 Glow 的朋友应该知道,我们主营四款 App,分别是Eve.Glow.Nuture和Baby.作为创业公司,我们的四款 App 都处于高速开发中,平均每个 Android App 由两人负责开 ...
 - 深入理解移动web开发之PPI,Pixel,DevicePixelRatio(转)
		
如果你是一个开始接触移动Web开发的前端工程师,那么你或许也遇到了和我曾经遇到的过问题:有太多新的概念需要掌握,太多相似的概念需要区分.没关系,我将用两篇文章的篇幅来解决这些问题.上篇文章关于解释和区 ...
 - MonkeyDevcie API 实践全记录
		
1. 背景 使用SDK自带的NotePad应用作为实践目标应用,目的是对MonkeyDevice拥有的成员方法做一个初步的了解. 以下是官方列出的方法的Overview. Return Type ...
 - MonkeyImage API 实践全记录
		
1. 背景 鉴于网上使用MonkeyImage的实例除了方法sameAs外很难找到,所以本人把实践各个API的过程记录下来然自己有更感性的认识,也为往后的工作打下更好的基础.同时也和上一篇文章& ...
 - Pixel Recurrent Neural Networks翻译
		
Pixel Recurrent Neural Networks 目前主要在用的文档存放: https://www.yuque.com/lart/papers/prnn github存档: https: ...
 - 腾讯技术分享:GIF动图技术详解及手机QQ动态表情压缩技术实践
		
本文来自腾讯前端开发工程师“ wendygogogo”的技术分享,作者自评:“在Web前端摸爬滚打的码农一枚,对技术充满热情的菜鸟,致力为手Q的建设添砖加瓦.” 1.GIF格式的历史 GIF ( Gr ...
 - MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example 1.4 Labeling the Map
		
MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example 1.4 Labeling the Map 一.前言 MapServer拥有非常灵活的标签 ...
 
随机推荐
- win8.1中如何获得管理员权限步骤
			
按WIN+R,运行对话框中输入gpedit.msc,开启组策略, 然后一步步地在"计算机配置"-"Windows 设置"-"安全设置"-&q ...
 - linux 匹配查询列表中包含某一特殊字符的所有行中的某一列
			
命令: ll | grep sh | awk '{print $9}' 解析: 其中,匹配列的命令为awk '{print $n}',$n为匹配的第几列.
 - Document字段发生变化后,报的错
			
2016-10-11 15:27:47,828 [ERROR] [main] SpringApplication:838 - Application startup failedorg.springf ...
 - Android:双层嵌套ViewPager并添加单击事件
			
仿网易新闻: 实现原理: 上面的导航栏是一个自定义的ViewGroup(类似ActionBar) 中间内容层是ViewPager套fragment实现左右切换滑动 fragment里面的布局是一个Li ...
 - .net析构函数对垃圾回收的影响简析
			
这里说析构函数,其实并不准确,应该叫Finalize函数,Finalize函数形式上和c++的析构函数很像 ,都是(~ClassName)的形式,但是功能上完全不一样.析构函数编译成il语言后会变成一 ...
 - Linux Kernel ‘/bcm/Bcmchar.c’本地信息泄露漏洞
			
漏洞名称: Linux Kernel ‘/bcm/Bcmchar.c’本地信息泄露漏洞 CNNVD编号: CNNVD-201311-053 发布时间: 2013-11-06 更新时间: 2013-11 ...
 - Apache virtualhost 配置
			
虚拟主机 (Virtual Host) 是在同一台机器搭建属于不同域名或者基于不同 IP 的多个网站服务的技术. 可以为运行在同一物理机器上的各个网站指配不同的 IP 和端口, 也可让多个网站拥有不同 ...
 - android之handler  obtainmessge与New message区别
			
obtainmessage()是从消息池中拿来一个msg 不需要另开辟空间new new需要重新申请,效率低,obtianmessage可以循环利用: //use Handler.obtainMess ...
 - Warning: Function created with compilation errors!
			
解决方案: sqlplus / as sysdba grant execute on UTL_I18N to scott; grant execute on DBMS_CRYPTO to scott;
 - Monkey的简单自动化
			
手机测试都逃避不了Monkey,但每次都是手动跑Monkey,自己导出包来,一条条的手动输入命令. 现在轮到我去执行这些任务,觉得很是繁琐,于是写了这个脚本,自动读取导出的包名,一键回车搞定. 代码如 ...