klisl / laravel-statistics
用于在 Laravel-5 网站中通过 IP 获取统计信息的包
2.2
2018-04-03 19:00 UTC
Requires
- php: >=5.4.0
- laravel/framework: ^5.3
- laravelcollective/html: ^5.4.0
README
为 Laravel-5 网站/应用程序通过 IP 地址输出访客统计信息的包。
该包的特点和优势
- 该包不使用外部服务,数据存储在数据库的单独表中。
- 统计信息基于网站/应用程序访客的唯一 IP 地址生成。
- 使用函数从统计信息中过滤掉搜索机器人数据。
- 可以添加不需要在统计中的 IP 地址到黑名单。
- 方便地过滤输出统计结果(按日、按时间段、按特定 IP 地址)。
关于每个单独访客输出的信息
- 其唯一的 IP 地址,以及获取其位置信息(国家-地区-城市)的可能性。
- 查看的网页 URL 和跳转次数。
- 访问特定页面的时间。
安装
- 使用 Composer 安装包。
composer require klisl/laravel-statistics
- 如果 Laravel 版本小于 5.5,请将以下行添加到项目中的
config/app.php
文件末尾的providers
数组中:
Klisl\Statistics\StatisticsServiceProvider::class,
对于 >= 5.5 的版本,可以跳过此步骤。
- 之后,在控制台执行发布所需资源的命令
php artisan vendor:publish --provider="Klisl\Statistics\StatisticsServiceProvider"
- 执行迁移以在数据库中创建所需的表(控制台)
php artisan migrate
-
在文件
config\statistics.php
中指定要收集统计信息的路由名称(通常来自文件 routes\web.php)。如果路由处理不同类型的请求,则仅收集 GET 类型的统计信息。 -
在文件
config\statistics.php
中设置统计页面密码或仅允许认证用户访问。
使用方法
要启用统计收集机制,需要先将收集数据的路由名称添加到文件 config\statistics.php 中的 'name_route' 数组中。例如,输出帖子列表的路由
Route::get('/posts', ['uses' => 'PostController@index'])->name('posts');
处理输出联系页面内容的路由
Route::get('/contact',['uses' =>'ContactController@show'])->name('contact');
在此示例中,结果是
'name_route' => ['posts','contact']
要访问统计页面,请输入: 您的网站/statistics
将打开一个输入密码的登录表单或认证页面(取决于设置)。输入正确数据后,将打开统计页面,其中包含用于过滤的表单。
在本地计算机上测试时,IP 127.0.0.1 将进入统计。在将包部署到主机后,需要将您的 IP 添加到黑名单,以便它不会显示在统计中。
如果需要(如果访问时间不匹配),在文件 config\app.php 中设置所需的时间区域,例如
'timezone' => 'Europe/Kiev',
我的博客: klisl.com