一简单介绍
1.piwik介绍
Piwik是一个PHP和MySQL的开放源代码的Web统计软件,它给你一些关于你的网站的实用统计报告,比如网页浏览人数,访问最多的页面,搜索引擎关键词等等。
Piwik拥有众多不同功能的插件,你可以添加新的功能或是移除你不需要的功能,Piwik同样可以安装在你的服务器上面,数据就保存在你自己的服务器上面。你可以非常容易的插入统计图表到你的博客或是网站亦或是后台的控制面板中。安装完成后,你只需将一小段代码放到将要统计的网页中即可。
2.piwik概况
Piwik支持插件,你可以通过插件扩展Piwik的功能,或者去掉一些不需要的功能。用户的界面支持Ajax技术是可定制的,你可以轻松拖放控件,定制自己需要的报告。
使用者独立拥有自己的统计数据,而不是寄存在服务商那里,这样就可以更灵活的使用统计数据,不用担心数据丢失问题。
Piwik是安装在服务器端的统计工具,安装过程很简单,但是需要服务器支持PHP和MySQL。安装的时候上传Piwik到服务器端,然后打开浏览器,Piwik会自动运行安装,整个过程不超过5分钟。目前Piwik已支持中文
二安装
官网:https://piwik.org
我的阿里云的部署环境:

[root@iZ2zeigj97j9lf057px8tmZ ~]# cat /etc/centos-release
CentOS Linux release 7.4.1708 (Core)
可以比我这个版本高
由于我想安装piwik3.2版本
所以需要的环境最低是:php5.6和mysql5.7
网站服务用:apache和nginx都可以
为了方便环境管理,就在这里直接使用nginx环境
mysql官网:https://dev.mysql.com
php官网:http://php.net/
nginx官网:http://nginx.org/

源码包放在百度云盘中

百度云盘链接:http://pan.baidu.com/s/1dE3gUbB 密码:rpst

为了节省时间,我们使用glibc版本的mysql

2.1安装mysql

[root@iZ2zeigj97j9lf057px8tmZ software]# mkdir -pv /home/mysql/data
[root@iZ2zeigj97j9lf057px8tmZ software]# tar -zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /home/mysql
[root@iZ2zeigj97j9lf057px8tmZ software]# mv /home/mysql/mysql-5.7.18-linux-glibc2.5-x86_64/* /home/mysql/
[root@iZ2zeigj97j9lf057px8tmZ software]# useradd -g mysql
初始化数据库
[root@iZ2zeigj97j9lf057px8tmZ software]# /home/mysql/bin/mysqld --user=mysql --basedir=/home/mysql --datadir=/home/mysql/data --initialize

红框中的密码要牢记,一会数据库修改密码,需要用到
数据库部署
[root@iZ2zeigj97j9lf057px8tmZ software]# cp /home/mysql/support-files/mysql.server /home/mysql/support-files/mysql.server.start
[root@iZ2zeigj97j9lf057px8tmZ software]# vim /home/mysql/support-files/mysql.server.start

[root@iZ2zeigj97j9lf057px8tmZ software]# /home/mysql/support-files/mysql.server.start start
[root@iZ2zeigj97j9lf057px8tmZ software]# ln -s /home/mysql/bin/mysql /usr/bin/mysql
[root@iZ2zeigj97j9lf057px8tmZ software]# vim /etc/my.cnf
如果没有my.cnf就自己添加如下内容
[mysqld]
basedir = /home/mysql
datadir = /home/mysql/data
character_set_server=utf8
init_connect='SET NAMES utf8'

[client]
default-character-set=utf8

[root@iZ2zeigj97j9lf057px8tmZ software]# cp /home/mysql/support-files/mysql.server.start /etc/init.d/mysqld
[root@iZ2zeigj97j9lf057px8tmZ software]#chmod 755 /etc/init.d/mysqld
[root@iZ2zeigj97j9lf057px8tmZ software]#service mysqld start
修改mysql初始化密码
不过不改,会有提示
You must reset your password using ALTER USER statement before executing this statement   
# 意思就是你必须重置你的密码在执行这个execute操作前

所以进入mysql后进行密码更新
[root@iZ2zeigj97j9lf057px8tmZ software]#mysql -u root -p
前面出现的密码,在这里填入
mysql> SET PASSWORD = PASSWORD('123456');
mysql> grant all on *.* to 'root'@'%' identified by '123456';
mysql> flush privileges;
完成后为了安装piwik需要创建相关数据库和权限
mysql> create database piwik; 
mysql> grant all on piwik.* to piwik@locahost identified by '123456';  
mysql> flush privileges;
刷新权限后,退出。

2.2安装php
[root@iZ2zeigj97j9lf057px8tmZ software]# tar -zxvf php-5.6.30.tar.gz
[root@iZ2zeigj97j9lf057px8tmZ software]# cd /software/php-5.6.30
[root@iZ2zeigj97j9lf057px8tmZ php-5.6.30]# ./configure --prefix=/software/php --with-config-file-path=/etc --with-mysql --with-mysqli=/home/mysql/bin/mysql_config --enable-inline-optimization --enable-fpm --enable-soap --with-libxml-dir --with-xmlrpc --with-openssl --with-mcrypt --with-mhash --with-pcre-regex --with-sqlite3 --with-zlib --enable-bcmath --with-iconv --with-bz2 --enable-calendar --with-curl --with-cdb --enable-dom --enable-exif --enable-fileinfo --enable-filter --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-gd-native-ttf --with-gettext --with-gmp --with-mhash --enable-json --enable-mbstring --disable-mbregex --disable-mbregex-backtrack --with-libmbfl --with-onig --enable-pdo --with-pdo-mysql --with-zlib-dir --with-pdo-sqlite --with-readline --enable-session --enable-shmop --enable-simplexml --enable-sockets--enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --with-libxml-dir --with-xsl --enable-zip --enable-mysqlnd-compression-support --with-pear
[root@iZ2zeigj97j9lf057px8tmZ php-5.6.30]#make && make install
[root@iZ2zeigj97j9lf057px8tmZ php-5.6.30]#cd /software/php/etc/
[root@iZ2zeigj97j9lf057px8tmZ etc]#cp php-fpm.conf.default php-fpm.conf
[root@iZ2zeigj97j9lf057px8tmZ php-5.6.30]#cp /software/php-5.6.30/php.ini-production /etc/php.ini
[root@iZ2zeigj97j9lf057px8tmZ php-5.6.30]#cp /software/php-5.6.30/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@iZ2zeigj97j9lf057px8tmZ php-5.6.30]#/software/php/sbin/php-fpm -t

[root@iZ2zeigj97j9lf057px8tmZ php-5.6.30]#service php-fpm start
[root@iZ2zeigj97j9lf057px8tmZ php-5.6.30]#netstat -ntlp | grep php-fpm

2.3安装nginx
[root@iZ2zeigj97j9lf057px8tmZ software]#tar -zxvf nginx-1.10.2.tar.gz
[root@iZ2zeigj97j9lf057px8tmZ software]#cd nginx-1.10.2
[root@iZ2zeigj97j9lf057px8tmZ software]#./configure --user=www --group=www --prefix=/software/nginx \
--conf-path=/software/nginx/conf/nginx.conf \
--pid-path=/software/nginx/run/nginx.pid \
--lock-path=/software/nginx/lock/nginx \
--with-stream \
--with-http_ssl_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_sub_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-http_perl_module \
--with-mail \
--with-mail_ssl_module
[root@iZ2zeigj97j9lf057px8tmZ software]#make && make install
2.4修改nginx的配置文件,配合piwik的安装
[root@iZ2zeigj97j9lf057px8tmZ ~]# cat /software/nginx/conf/nginx.conf
# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
# * Official Russian Documentation: http://nginx.org/ru/docs/

user www;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Load dynamic modules. See /usr/share/nginx/README.dynamic.
#include /usr/share/nginx/modules/*.conf;

events {
worker_connections 1024;
}

http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';

access_log /var/log/nginx/access.log main;

sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;

include /etc/nginx/mime.types;
default_type application/octet-stream;

# Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /software/nginx/conf/conf.d/*.conf;

# server {
# listen 80 default_server;
# server_name _;
# root /usr/share/nginx/html;
#
# # Load configuration files for the default server block.
# include /etc/nginx/default.d/*.conf;
#
#
# error_page 404 /404.html;
# location = /40x.html {
# }
#
# error_page 500 502 503 504 /50x.html;
# location = /50x.html {
# }
# }
server {
listen 80;
server_name 182.92.86.125;
root /var/www/piwik;
index index.php index.html index2.htm;

location ~ \.php$ {
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/piwik$fastcgi_script_name;
}
}
}
nginx解析php项目

location ~ \.php$ {
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/piwik$fastcgi_script_name;
}

[root@iZ2zeigj97j9lf057px8tmZ software]#/software/nginx/sbin/nginx -t

文件正常后,启动nginx
[root@iZ2zeigj97j9lf057px8tmZ software]#/software/nginx/sbin/nginx

2.4部署piwik
[root@iZ2zeigj97j9lf057px8tmZ ~]#mkdir -pv /var/www/piwik
[root@iZ2zeigj97j9lf057px8tmZ software]#unzip piwik.zip
[root@iZ2zeigj97j9lf057px8tmZ software]#cp -r /software/piwik/* /var/www/piwik/
打开网站后报错,并提示你如何处理

[root@iZ2zeigj97j9lf057px8tmZ software]# chown -R nobody:nobody /var/www/piwik
[root@iZ2zeigj97j9lf057px8tmZ software]# chmod -R 755 /var/www/piwik/

修改为中文后,继续下一步,发现一个php相关的预警报错

安装提示修改php.ini
为预防某些严重问题,您必须在 php.ini 文件中加入如下几行:always_populate_raw_post_data=-1
做过这个改动之后,请重新启您的网络服务器。
修改文件 vim /etc/php.ini
加入如下几行:always_populate_raw_post_data=-1

重启服务 service php-fpm restart
此时在看正常后,下一步

填写相关的数据库内容

点击下一步却报错了,如下图

说明,数据库处理有问题,参考数据库安装管理,查看用户权限密码等

发现指定登录是没有问题的,有可能是php页面的输入写错了,重新输入看看
仍然不行,尝试放大权限看看
mysql> grant all on piwik.* to piwik@'%' identified by '123456';
Query OK, 0 rows affected, 1 warning (0.04 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
虽然通过了,但是报错告警了,说是有重复的数据库,于是点击,删掉

干掉重复的

于是正常的进入下一个环节了

继续进入下一个环节

admin
123456
然后下一个环节

下一步

<!-- Piwik -->
<script type="text/javascript">
var _paq = _paq || [];
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="//172.16.1.225/";
_paq.push(['setTrackerUrl', u+'piwik.php']);
_paq.push(['setSiteId', '1']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Piwik Code -->
将代码给前端处理加入,就好了,完活了

代码部署完成后,就可以看到效果了
有时你会看到这个,直接点升级就好了

升级后效果如下

可以选择打赏,有钱的大人可以给点
继续后,进入正式界面

和前端配合后,就可以看到效果 了

piwik源码安装部署的更多相关文章

  1. 在ConoHa上Centos7环境下源码安装部署LNMP

    本文记录了从源码,在Centos 7上手动部署LNMP环境的过程,为了方便以后对nginx和mariadb进行升级,这里采用yum的方式进行安装. 1.建立运行网站和数据库的用户和组 groupadd ...

  2. Zabbix源码安装部署

    zabbix源码部署安装 参考文档:https://www.zabbix.com/documentation/4.0/manual/installation/install ​ https://www ...

  3. Thingsboard源码安装部署

    交流QQ群 如果安装有其他问题,可以到QQ群求助 环境安装 开发环境要求:Jdk 1.8版本Postgresql 9以上Node.jsNpmMaven 3.6以上Git工具Idea开发工具 JDK 下 ...

  4. kubernetes 源码安装部署 1.12

    一. 前期准备 参考文档 https://jimmysong.io/kubernetes-handbook/practice/create-tls-and-secret-key.html 1. 安装g ...

  5. 源码安装部署redis

    下载redis源码包 解压 编译安装 ./configure PREFIX=/data/apps/rediscd /data/apps/redismake && make instal ...

  6. 使用Salt-ssh部署Salt-minion之源码安装(二)

    二.源码安装篇 使用salt-ssh功能要求客户端系统python版本2.6+ 1.salt-minion端环境: 系统:SUSE SP3 64bit python版本:2.6.6 RPM包:pcre ...

  7. 部署zabbix监控平台(源码安装)

    案例:部署Zabbix监控平台 1 问题 本案例要求部署一台Zabbix监控服务器,一台被监控主机,为进一步执行具体的监控任务做准备: 安装LNMP环境 源码安装Zabbix 安装监控端主机,修改基本 ...

  8. 部署 LNMP(源码安装版本)shell脚本

    #!/bin/bash # 一键部署 LNMP(源码安装版本) menu() { clear echo " ##############‐‐‐‐Menu‐‐‐‐##############& ...

  9. 源码安装python +NGINX 的坎坷路 +uwsgi安装 部署django 的CRM项目

    一.Nginx安装(基于ubuntu17.10 版本) 首先我们是基于源码安装,主要有如下步骤 1.安装依赖包 1.安装gcc g++的依赖库 sudo apt-get install build-e ...

随机推荐

  1. C# RichTextBox 制作文本编辑器

    本文利用一个简单的小例子[文本编辑器],讲解RichTextBox的用法,仅供学习分享使用,如有不足之处,还请指正. Windows窗体中的RichTextBox控件用于显示,输入和操作格式化的文本, ...

  2. 虚拟机中安装Virtualbox,嵌套的虚拟机不能运行64位系统

    https://www.quora.com/Can-I-install-Virtualbox-in-a-virtual-machine Here is a previous question on Q ...

  3. 智能POS打印配置&常见问题FAQ 12-14 后期持续更新

    1.安卓一体机会员注销钱会不会退回到支付宝 智能pos会员注销钱目前只能现金退还. 2.支付异常订单悬浮球在哪关闭 设置-->功能设置-->系统设置-->开启支付异常订单悬浮球 3. ...

  4. 同一个菜品商家中心和erp价格显示不一致解决方案FAQ

    1.适用场景: 2.问题原因:子账号在商家中心改了价格 3.解决办法: (1).子账号登录商家后台修改 再同步(2).ERP上商品管理 修改价格

  5. The log scan number (620023:3702:1) passed to log scan in database 'xxxx' is not valid

    昨天一台SQL Server 2008R2的数据库在凌晨5点多抛出下面告警信息: The log scan number (620023:3702:1) passed to log scan in d ...

  6. c# 建立到数据源的连接 以及获取项目配置文件的属性

    两种连接数据库的写法: <connectionStrings> <add name="HRModelsContainer" connectionString=&q ...

  7. linux安装教程

    一.安装准备工作 虚拟机VMWARE10 镜像文件CentOs6.5 二.安装过程 1.启动VMWARE10,点击创建新的虚拟机. 2.选择典型安装即可 3.这里我们选择稍后再进行安装操作系统,因为这 ...

  8. SQL Server 2012 手动安装帮助文档+排错

    逆天SQL Server 2012装的不要不要的,最后发现...竟然没帮助文档...汗啊!原来它跟vs一样要自己装帮助文档...好吧,官网一下载,妹的...报错...然后就让我们还原这个安装过程以及逆 ...

  9. HttpHandler实现网页图片防盗链

    using System; using System.Collections.Generic; using System.Linq; using System.Web; /// <summary ...

  10. [Hive_add_5] Hive 的 join 操作

    0. 说明 在 Hive 中进行 join 操作 1. 操作步骤 1.0 建表 在 hiveserver2 服务启动的前提下,在 Beeline客户端中输入以下命令 # 新建顾客表 create ta ...