https利弊(1):https性能测试(可下载精确测试工具)

王志勇 发表于 2026年07月08日 00:57

本文如果有错误的地方,敬请谅解,但基本可以担保90%以上正确,因为有实际的精确测试数据,以测试数据为准,本期会聊到http2、http3的一点内容。https是最大的互联网谎言,https是编程、建站的一大障碍,https并不是先进的技术,反而是互联网的严重倒退。不仅影响极限吞吐量,如果有多个域名、二级域名,简直是灾难。先说结论,https短时间内不可能比http快,就是再过10年、20年也很难出现比http快的协议。即使加快,也只是https本身一年比一年的https快,但还是不如同样环境下的http快。

由于https严重影响建站,本博客是全网首家揭晓https的弊端,第1篇《详解99.9%的网站没必要用https》于2018年上线,本人是webshu.com的站长(于2003年建立),从事编程。以前的https测速只能借助第三方网站,测试的结果是,https总是比http慢,https的多路复用也比http慢(测试结果如链接);最近的几个月,我终于想到了https性能测试的程序方法,就是用file_get_contents()函数分别远程调用https、http文件,然后对比程序完成后的运行时间。(本次编写的测试工具,是分别调用20次。)

的确,在最近的1年的时间里,整个互联网的https的速度、稳定性,比过去的https有了很大的提升,现在无论是用自签名测试、还是certbot,我在不同时间测试了不少于100次,就是隔好长时间,突然访问一个用certbot建立的https测试站,肉眼观察的感官,现在2026年的https的速度,和http的速度肉眼较难看出区别了,https的稳定性也大为提高。

本https速度测试工具下载:(作者:自由勇)
http://st.auiou.com/f/grate/speedofhttps.zip (大小:1KB)

使用方法:
1. 本程序测试的结果是用www访问主机内网的速度,有点类似于用电脑ping自己的路由器,用file_get_contents()来访问主机内网,能精确得到http、https这2者之间的速度差。

2. 该程序共有3个文件,其中test.php是主程序,可放在http或https站点,httpok.php必须放在http站点,httpsok.php必须放在https站点(不能是自签名https)。

3. 需要确保VPS的http可以访问,为了防止博客站点设置了自动把http页Rewrite到https页,通常用http://VPS的IP地址,就可以正常访问,如果不能访问,需要在Apache、Nginx里,用自己的二级域名新建一个http站点A。

4. test.php和httpok.php这2个文件,必须放在VPS的网站根目录如/var/www/html,或者放在http站点A的根目录,然后用 http://VPS的IP地址/httpok.php 测试能否访问。

5. httpsok.php文件,放在https站点、或https博客的根目录,我在测试中发现PHP 7.X或以上,这个https站点必须是SSL如certbot,不能是自签名,PHP 5.X可以是自签名。

6. 然后用 https://自己的https站点或博客/httpsok.php 测试能否访问。

7. 编辑test.php,必须修改 $ur1[1] 和 $ur1[2] 这2个值,如下图箭头所指的位置。其中,$ur1[1]为VPS的IP地址,或者http站点A的域名;$ur1[2]为https站点的域名。

8. 访问这个test.php,例如 http://VPS的IP地址/test.php,或者 http://站点A/test.php

此程序的原理:
原始的程序为:

<?php
$start=microtime(true);
$e1=@file_get_contents('http://104.223.**.**/httpok.php');
$end=microtime(true);
echo ($end-$start).'<br>';

$start=microtime(true);
$e1=@file_get_contents('https://testsite.auiou.com/httpsok.php');
$end=microtime(true);
echo ($end-$start);
?>

注:上述程序为原理,无访问成功的验证。

做成测试工具后,就是一次分别获取http、https的访问时间,用循环程序每次各获取20次,并增加了访问成功的验证,如果显示“第X次获取失败”说明该测试工具没有正确安装,导致http或https访问失败,必须在上述的步骤4、5、6里先测试

下列测试结果的解读:
1. 在程序里我没有把20次的测试结果,再做出一个平均值,没有必要统计平均值,因为要看大面积的测试结果,所以这里罗列20次,其实次数越多,越有参考意义。

2. 可以看出https整体的速度比http慢,香港主机+PHP 7.4,https比http大约慢0.01秒~0.12、0.14秒;美国主机+PHP 5.5+https自签名,https比http大约慢0.04秒,PHP 7.4未测试。

这个https的数据目前还是比较不错的,这也是为什么现在的https的访问速度和http经常看不出区别。

但有时候,还是有区别的,有时候会达到0.2秒~0.4秒。https在测试结果里,远不如http稳定。其实就是这个差别,网站的极限吞吐量,http是https的3~10倍

示例,比如我这次测试的是香港主机,环境是Debian 11+PHP 7.4,https为certbot,即Let’s Encrypt,测试结果如:

http的20次主机内网访问速度
访问目标:http://38.22.**.***/httpok.php
测试20次:(单位:秒)
0.0012478828430176
0.0030639171600342
0.00092887878417969
0.00062704086303711
0.00061702728271484
0.00060892105102539
0.00059390068054199
0.00193190574646
0.0006248950958252
0.00047707557678223
0.00040197372436523
0.0004730224609375
0.00042510032653809
0.00054717063903809
0.00046992301940918
0.0003960132598877
0.00043487548828125
0.00037789344787598
0.00038909912109375
0.00042104721069336

https的20次主机内网访问速度
访问目标:https://cellular.auiou.com/httpsok.php
测试20次:(单位:秒)
0.16291308403015
0.053548812866211
0.014837026596069
0.049654960632324
0.054419994354248
0.015960931777954
0.050944089889526
0.015139102935791
0.15727710723877
0.014770030975342
0.012224912643433
0.011759042739868
0.011697053909302
0.012944936752319
0.012795925140381
0.1517539024353
0.012124061584473
0.012380838394165
0.012172222137451
0.0120530128479

美国主机+Ubuntu 14+PHP 5.5,自签名https测试:

http的20次主机内网访问速度
访问目标:http://104.223.**.***/httpok.php
测试20次:(单位:秒)
0.0012137889862061
0.00090909004211426
0.00098299980163574
0.00080704689025879
0.0007469654083252
0.00089097023010254
0.00071501731872559
0.00030303001403809
0.00030398368835449
0.00032401084899902
0.00030899047851562
0.00037598609924316
0.00040793418884277
0.00031590461730957
0.0003199577331543
0.00035905838012695
0.00032901763916016
0.00034093856811523
0.00030398368835449
0.00029301643371582

https的20次主机内网访问速度
访问目标:https://104.223.**.***/httpsok.php
测试20次:(单位:秒)
0.043678045272827
0.043785810470581
0.043823957443237
0.044019937515259
0.043996810913086
0.043987035751343
0.044287919998169
0.043694019317627
0.043982028961182
0.043933153152466
0.044027090072632
0.043937206268311
0.043988943099976
0.044034004211426
0.04392409324646
0.044006109237671
0.044111013412476
0.043883800506592
0.04394793510437
0.044018030166626

美国主机+Debian 11+PHP 7.4,因为未配置,有时间再测试,会更新此部分。

关于http2
这几年互联网出现的https,并不一定是http2,即https≠http2,这是我这几天刚发现的。因为我想测试现在安装的最新的https,是不是http3,然后用这个工具 https://http3check.net

测试的结果是,Debian 11算是较高的系统版本了,Debian 11下内置的certbot安装命令,安装的Let’s Encrypt,输入我的https地址,测试结果,并没有支持http2、http3。

也就是http2和http3有一点类似的是,安装https时,并不是全自动安装http2、http3,需要另外安装依赖包、或者编译安装,步骤较为繁琐。

关于最新的http3加速
我在网站搜索了http3的安装方法,也查到了http3加速的原理。网上说http3是基于UDP的QUIC协议,网上的资料观点是http基于TCP协议,TCP会有队头阻塞问题;http3的QUIC协议解决了队头阻塞问题。

这个我暂时没有时间测试,因为http3的安装比较繁琐。http3能否比http快,也可以用本文的工具进行测试。

关于网页的加密方法
数据加密,完全可以自主开发,不必统一使用SSL。SSL除了安装繁琐,需要定期续期,就像国内现在的小区,绝大部分有电梯的小区,电梯都必须刷卡,必须交物业费,电梯卡才给续期,物业美其名曰“升级”。

这个SSL的续期,很像电梯卡的续期。只有少数人,才能发现电梯必须刷卡,并不是为了安全,而是催收物业费。

SSL的出现,能够带动多少就业,别有用心。

http真的不安全吗?
从2018年开始,Chrome浏览器把http打上了“不安全”的标注,之后有一些浏览器跟风,比如苹果手机自带的Safari浏览器。如果说“http不安全”,到目前为止,尚未发现有“http不安全”的安全事件。这说明,主张“http不安全”的发起人,是别有用心。

解决“不安全”标识唯一的办法
博客是https最大的推动力之一,由于现在99%以上的博客都安装https,http的地位会一年比一年低。每一个https站点上线,就是为https这种道德绑(隔开)架投了一票。

其实,大部分博主在5~10年之内都会关站,这个比例大约是90%,因为最近我不得不清理失效的博友留言的链接,1100多个博客,只剩下90多个。所以,博客没有必须安装https

在2013年之前,智能手机还没有普及,那时候的网上银行,必须使用电脑,而工商银行一直只支持IE浏览器,工商银行的网站有不支持当前浏览器的提示(如火狐),后来支持Chrome 41。

同样,如果您是一位http、极限吞吐量的深度支持者,那么如果有一个流量大的网站,可以把这些给http标注“不安全”的浏览器,通过UA,都限制访问,把页面提示的风格做得工事、权威一点,并提示用户改用指定的浏览器这是我一直很想做、又迫不得已的事情

迫不得已,是因为我是Goo(隔开)gle的深度粉丝,Goo(隔开)gle就是http这件事做得特别不好,别的事情都很好。

关于博客、网站和搜索引擎
最好的搜索引擎无疑是Goo(隔开)gle,但在国内无法访问很多年了。从2026年开始,百度大规模地清空博客、个人网站的收录,只收录1~5页。

清空的原因,可能是百度收到了政策,只要没有IC(隔开)P备(隔开)案、或者没有使用https,你的博客、或者网站都会清空收录,就在最近几个月刚发生的事情。

360的so.com,还尚未有这个政策,正常收录。

博客有必要让搜索引擎收录吗?
在互联网相对早期,也就是2005年~2015年这段时间,非常有必要。由于搜索引擎的收录,每天至少能稳定增加30~100个以上的访问量。

然而,由于百度这次大规模对博客的收录清空,让我突然发现一件事情,搜索引擎不收录就不收录吧,因为搜索引擎带来的流量,有一部分是问问题的,但也有很多会由路人转为深度粉。

以前的路转粉用户,已经足够了。其实,一个博客如果有100位粉丝,有100个人知道你,就已经很多了。

更何况,如果你去别的博客的评论稍微留一下言(10个博客就足够,没必要发spam),每天30以上的访问量是十分保底稳定的事情。

既然百度由于苛刻的条件不收录博客,那么百度也不再是搜索引擎,博客则自动变为“个人IP时代”。

我的博客在建立之初的几年里,也曾达到稳定每天访问几百人,因为那时候有Goo(隔开)gle的PR值。但如今看来,这些都没有意义,访问量反而花费了自己大量的时间来关注。

这几天本来我打算专门写一篇《如何快速打造一个优秀博客》,就是因为百度不再收录博客,那么绝大部分的访问量(90%以上),基本上是没有意义的。只有博主有稳定的收益,才有真正的意义。因此,什么博客、微博、微信、朋友圈、微信群、QQ群、论坛、快手、抖音……等一切的网络社交平台,99%以上都是没有意义的

打造一个优秀博客,就是假设如果自己已经年赚30万、或者10万、300万的情况下(这3个顺序我是特意这样排序的,本来应该把300万放在最前面,但太难了),会怎样写博客,哪些话该说、哪些话不该说。

为什么很少见到香港人写博客?

因为有钱人没有时间,或者有时间的有钱人,他们是不理人的。

所以,这会形成一个良性循环,一旦假设自己有钱,那么一定会慢慢或多或少地出现一个机会相匹配。

我这辈子最后悔的事情之一,就是2004年初去了深圳,一去就是5年多。当时就是因为去了深圳,导致webshu.com停更。如果我没有去深圳,那么我的这个网站就不会停更。

如果能回到过去,我现在会对20多年前的自己说,一定要假设如果自己已经年赚30万、或者10万、300万,那么会做什么

博客只要达到100篇~400篇就足够了,写得再多,意义似乎不是那么大,因为需要花费相当庞大的时间,除了练笔、爱好,写博客的本质,只要是以贡献内容为主,很多时候也成了免费贡献打工。

https能否为网站提速?
提速目前是不可能的,反而降速,速度使用本文的工具,就能做出实际的对比。如果博客、网站慢,并不是因为http,而是瓶颈在于MySQL,MySQL是非常慢的数据库。到目前为止,http只会比https快。

后面如果我有时间,也会尝试用Go语言写程序,然后实际对比PHP和Go语言的速度(PHP的运行速度很快,PHP 7.4计算100万次,耗时0.05秒),用前面的《秒会+实战PHP程序设计培训(2)》的思路,是可以快速上手之前不会的语言的,就是移植、翻译、搜索引擎查资料的过程。

这个移植的难度,主要取决于语言自身的语法简洁程度,通常7天就能上手。由于Go语言和PHP语言现在有个共同之处,是内置在Linux主机的软件仓里,能一键全自动安装,且Go语言、PHP都占用资源极小。

Shell程序由于语法太啰嗦,即使上手,开发速度也会以几何级的速度减慢。

(本文3800余字,使用5个多小时完成,写到深夜,写作不易,请求关注。)

0条评论:

发表评论:
名字: (*必填)
博客: (可省)

正文:

  记住信息?

王志勇:1980-09-26 (46周岁)
程序设计,前端设计。

版权声明:本博客所有文章,均符合原创的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。

与此相关的链接
自由勇专栏

Blog存档 Archives

2025年-2026年03月(10)
2024年(13)
2023年 +

2022年 +
2021年 +
2020年 +
2019年 +
2018年 +
2016年-2017年(9)
2014年06月-09月(10)
2013年 +
2012年 +
2011年 +
2010年 +
2009年 +
2008年 +
2007年 +
2006年 +
2005年09月(4)

Copyright © 2006-2026 auiou.com All rights reserved.
此Blog程序由王志勇编写