speedtest-x是 LibreSpeed 的延伸项目,基于其自身做了结果上报扩展。(LibreSpeed 也有自己的一套 PHP 结果上报程序,但需要依赖 MySQL 而且配置过程和界面并不友好),speedtest-x 做到了开箱即用。
speedtest-x程序会将各地用户的测速结果记录下来,并提供面板供网站主查看与排序,来评算出全国各地的速度最优运营商。
1、简介
项目:https://github.com/BadApple9/speedtest-x
演示搭建快云14.9的主机上,目前还有货,不过不多了,感兴趣的可以去看看。
#圣诞+新年#快云云服务器:终身月付14.9元 – 2核/2G/25G SDD/1500G流量/3M带宽
2、准备
- 宝塔面板(宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取https://www.bt.cn/?invite_code=MV9ub2NxdmI=)
- PHP7.4
- nginx1.19
- docker管理器
常规部署和docker部署
注意:安装分为常规部署和docker部署!
3、常规部署
1)下载本仓库并解压到网站目录,访问 {域名}/index.html 进行测速
宝塔新建网站,这里略过,利用宝塔的远程下载把程序下载到网站根目录,之后解压即可。如果对宝塔的远程下载不熟悉,可以看这篇文章:https://www.daniao.org/11860.html
2)打开 {域名}/results.html 查看测速记录
3)backend/config.php
中可定义一些自定义配置
MAX_LOG_COUNT = 100:最大可保存多少条测速记录 IP_SERVICE = 'ip.sb':使用的 IP 运营商解析服务(ip.sb 或 ipinfo.io) SAME_IP_MULTI_LOGS = false:是否允许同一IP记录多条测速结果
4)效果展示
测速记录展示:
4、Docker 部署
宝塔的docker管理器在软件商店安装,找不到可以搜索,之后用ssh工具连接到你的服务器在命令模式下执行如下命令:
1)拉取 Docker 镜像
docker pull badapple9/speedtest-x
2)运行容器
docker run -d -p 9001:80 -it badapple9/speedtest-x
Tips:
-d:以常驻进程模式启动 9001: 默认容器开放端口,可改为其他端口 启动时可指定的环境变量: -e WEBPORT=80: 容器内使用的端口 -e MAX_LOG_COUNT=100: 最大可保存多少条测速记录 -e IP_SERVICE=ip.sb: 使用的 IP 运营商解析服务(ip.sb 或 ipinfo.io) -e SAME_IP_MULTI_LOGS=false: 是否允许同一IP记录多条测速结果
3)访问 {IP}:{端口}
进行测速,默认端口是9001
,如果不能访问,在宝塔的安全中放行端口。效果展示和常规部署是一样一样的,这里就略过了。
5、最后
真都很好用,安装也非常简单,执行起来也很利索。特别是IP记录多条测速结果的查看这个功能站长非常喜欢。
speedtest-x 使用的是文件数据库来保存来自不同用户的测速结果,方便查看全国不同地域与运营商的测速效果。