大家好, 我是可愛的排骨
目錄一. speedtest 簡介.二. 安裝到 Windows. 難度 ★★三. 安裝到 Linux. 難度 ★★★★★四. 安裝到 群暉 DSM. 難度 ★五. 使用 Docker 鏡像部署. 難度 ★★★六. 總結(jié)
一. speedtest 簡介.1. 作者簡介.
喝井不忘挖水人, speedtest 的作者不是排骨, 是下面這位.
speedtest 是由意大利的一位90后愛打游戲愛跳舞機的逗B碼農(nóng) Federico Dossena (見下圖) 發(fā)布的一個開源項目 (https://github.com/adolfintel/speedtest).
2. 原理簡介
speedtest 以 HTML 和 JavaScript 為主, 利用客戶端的瀏覽器通過上傳和下載垃圾數(shù)據(jù)來測試 HTTP 傳輸速度, 和大家常用的 speedtest.net 差不多.
speedtest 使用任意操作系統(tǒng)上的任意 Web 服務(wù)器作為服務(wù)端, 所以理論上它支持 Windows/MacOS/Linux/Unix 等系統(tǒng), IIS/Nginx/Apache/lighttpd 等服務(wù)器.
任意瀏覽器作為客戶端如 Chrome/Firefox/IE11/Edge/Safari/Opera?
speedtest 默認使用 PHP 作為服務(wù)端, 目前也有 node.js 版本, 也可以只用純靜態(tài)服務(wù)器.
本文所說的 speedtest 與 Ookla 公司的 speedtest.net 及相關(guān)測速 app 沒有任何關(guān)系, 沒何關(guān), 沒關(guān), 沒.
**二. 安裝到 Windows. 難度 **★★在 Windows 上安裝 speedtest 應(yīng)該是絕大多數(shù)普通用戶, 為了照顧沒有相關(guān)經(jīng)驗的用戶, 這里排骨寫的步驟較多較細, 但是已經(jīng)最大化的精簡了.
本文以 Windows 10 為例, Windows 7 也適用, 不過某些地方有不同, 排骨會注明.
1. 安裝 IIS 服務(wù)器.
使用 Win+R 打開運行窗口, 輸入 **OptionalFeatures **打開 Windows 功能.
必須選擇 IIS 管理控制臺/靜態(tài)內(nèi)容/默認文檔/CGI 4個選項. 默認文檔不是必需的.
2. 下載并安裝 PHP Manager for IIS.
PHP Manager for IIS 是微軟官方推薦的一個 IIS 插件, 可以最大化的簡化 IIS 上配置 PHP 的過程. 如果不用這個插件, 在 Windows 上配置 PHP 會比 Linux 上更麻煩.
下載地址: https://www.iis.net/downloads/community
Win7 系統(tǒng)安裝** PHPManagerForIIS-1.2.0**
Win10 系統(tǒng)安裝 PHPManagerForIIS_V1.5.0, 這里排骨以 Win10 為例.
如果出現(xiàn) SmartScreen 提示, 請按上面的圖繼續(xù).
安裝過程就是一路 Next.
3. 下載 PHP 包并解壓
x64版下載: https://windows.php.net/downloads/releases/php-7.2.6-nts-Win32-VC15-x64.zip
x86版下載: https://windows.php.net/downloads/releases/php-7.2.6-nts-Win32-VC15-x86.zip
將下載好的 zip 包解壓到任意路徑, 如 F:\php
4. 為 IIS 配置 PHP.
使用 inetmgr 命令掃開 IIS 管理器.
打開 PHP Manager.
通過 “Register new PHP version” 設(shè)置 PHP 引用路徑.
上一次我們把 PHP 的文件解壓到了 F:\php.
使用 Check phpinfo() 測試 PHP 配置是否成功.
如果看到這個紫色頁面, 就說明 PHP 配置成功了.
5. 下載 speedtest 包并解壓.
speedtest 包下載: https://github.com/adolfintel/speedtest/archive/4.5.5.zip
解壓到 C:\inetpub\wwwroot, 熟悉 IIS 配置的用戶可以解壓到其它地方.
注意所有文件都在壓縮包里的子目錄中!
6. 測試 speedtest.
用瀏覽器 (推薦 Chrome) 訪問 http://localhost/example-pretty.html. 如果出現(xiàn)下圖這樣的測試結(jié)果則表達 speedtest 運行成功.
7. 防火墻開啟入站 80 端口.
這一步是可選的. 如果內(nèi)網(wǎng)的其它電腦或手機無法訪問這臺 Windows 上的 speedtest, 可能是被 Windows 防火墻擋了.
將 Windows 入站端口 80 打開后, 內(nèi)網(wǎng)的其它設(shè)備才能訪問剛剛安裝好的 speedtest.
以管理員身份運行 cmd 打開命令行窗口. 使用下面的命令行給防火墻開啟 80 端口.
netsh advfirewall firewall add rule name=“speedtest” dir=in action=allow protocol=TCP localport=80
Win7命令為
netsh firewall add portopening TCP 80 “speedtest”
最后用手機或其它電腦訪問 http://192.168.1.91/example-pretty.html 開始測速吧 (假設(shè)安裝 speedtest 的電腦 IP 為 192.168.1.91).
一般用戶家中沒有 Linux 電腦, 不過排骨考慮到使用 OMV 等系統(tǒng)作 NAS 的用戶和自購有 VPS 的用戶, 順便也寫一下 Linux 上安裝 speedtest的步驟. 用 Linux 系統(tǒng)的用戶基礎(chǔ)都不會太菜吧?
下面 ubuntu 18.04 為例, 其它 Linux 版本的用戶請自行調(diào)整.
1. 安裝 nginx 和 php-fpm
sudo apt install nginx php-fpm
2. 修改 nginx 站點配置
sudo nano /etc/nginx/sites-available/default
以下面為修改配置文件內(nèi)容, 注意 /var/run/php/php7.2-fpm.sock 的路徑是不是正確.
server { listen 80 default_server; root /var/www/html; index index.html; server_name _; location / { try_files $uri KaTeX parse error: Expected 'EOF', got '}' at position 19: …/ =404; }? locatio… { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; }}
重啟 nginx.
sudo service nginx restart
3. 下載 speedtest 并解壓
speedtest 包下載: https://github.com/adolfintel/speedtest/archive/4.5.5.zip
sudo wget https://github.com/adolfintel/speedtest/archive/4.5.5.zip
解壓到 /var/www/html.
sudo unzip 4.5.5.zip -d /var/www/html/sudo mv /var/www/html/speedtest-4.5.5/* /var/www/html/
4. 防火墻開啟入站 80 端口
這步也是可選的.
sudo ufw allow 80
安裝配置完成. 開始測速吧!
**四. 安裝到 群暉 DSM. 難度 **★★在群暉系統(tǒng)上安裝 speedtest 是個非常好的選擇, 也是最簡單的方案. 與 Linux 上安裝 speedtest 類似, 群暉的管理系統(tǒng)本身就是基于 Linux 和 nginx 的.
1. 下載 speedtest 并上傳到群暉.
speedtest 包下載: https://github.com/adolfintel/speedtest/archive/4.5.5.zip
將 speedtest 包中的文件上傳到群暉共享文件夾的某個目錄, 如下圖
2. 安裝 Web Station 和 PHP 7.0.
從群暉套件中心可以找到, PHP 7.0 可能在安裝 Photo Station 時一并安裝好了.
3. 設(shè)置 PHP 和 虛擬主機.
打開 Web Station 套件, 選擇 PHP 設(shè)置, 編輯默認PHP配件文件. 勾選 openssl.
選擇 虛擬主機, 點擊 新增, 然后按下圖配置虛擬主機. 其中 端口 和 文檔根目錄 按實際情況設(shè)置.
安裝配置完成. 開始測速吧!
**五. 使用 Docker 鏡像部署. 難度 **★★★用 Docker 部署 speedtest 是最簡易快速的方法, 但是對用戶來說起點也是最高的.
排骨專門給 speedtest 制作了 Docker 鏡像 (6MB), 比原作者的鏡像 (158MB) 小很多很多很多.
1. 下載 speedtest 鏡像.
docker pull cuteribs/speedtest
2. 創(chuàng)建 speedtest 容器.
docker run -d --name speedtest -p 80:80 cuteribs/speedtest
安裝配置完成. 開始測速吧! 2行命令就搞定了, 是不是簡單得要死而絕大多數(shù)人又不會?
六. 總結(jié)按上面任一方法搭建好 speedtest 服務(wù)器后, 就可以愉快的測速了.
不論是測內(nèi)網(wǎng)還是外網(wǎng)
不論是測 路由器, AP, 網(wǎng)卡還是VPS
不論是測 有線 NAT, 2.4G/5G WiFi 還是 SS等軟件轉(zhuǎn)發(fā)
只要打開瀏覽器, 輸入 speedtest 地址就行了.
speedtest 測速的優(yōu)點:
測試簡單暴力. 瀏覽器就能測, 無需別裝 app.界面簡潔明了. 直觀且無廣告不收費.上行下行兼顧. 不用雙向測試, 不像 iperf3 只能單向.speedtest 測速的缺點:
用戶技能要求. 需要自己安裝測速服務(wù)器, 希望本貼能解決這個問題.測速協(xié)議片面. 基于 HTTP 協(xié)議測速, 有些片面. 不過95%的用戶有90%的網(wǎng)絡(luò)使用都是 HTTP. (純瞎說的 哈~)性能瓶頸要求. 因為基于 Web 服務(wù)器和 JavaScript, 所以服務(wù)器和客戶端性能不能太差. 測試 2.5/5/10 千兆可能力不從心.轉(zhuǎn)載請注明來自夕逆IT,本文標題:《cmd命令跳舞代碼(最好用的內(nèi)外網(wǎng)測速工具 speedtest 服務(wù)器搭建指南)》

還沒有評論,來說兩句吧...