我的博客使用的是Github Pages服务, 并且使用了自定义的域名, 已经有一段时间了, 如今遇到以下问题
- 百度爬虫无法访问
- 自定义域名不支持https
- 手机访问有点慢
- 微信访问提示不安全
尤其是第4点, 我不能接受, 因此我又折腾了一翻, 查找资料并动手实践, 看看有没解决办法
百度爬虫被禁
可以用以下命令测试1
curl -A "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)" https://github.com
百度爬虫被禁的结果就是, 百度一下是无法搜索到你的博客内容的
但话说回来, 想让百度搜索到还真不容易, 以博文这些年,我们知道的那些pages平台为例(该博客是托管在Gitlab上的, 百度爬虫是可以访问的), 百度与谷歌的搜索结果如下:
百度的搜索结果, 首页里没有原博文, 有的只是二手内容(以推酷为例, 它里面的文章其实是爬虫去别人的网站抓取的)
谷歌的搜索结果, 第一条就是
所以说, 就算百度爬虫不被禁, 想让自己的博客被直接搜索到也并非易事, 就先不纠结了
自定义域名不支持https
Github官方文档指出
You can enforce HTTPS to add a layer of encryption for traffic to your GitHub Pages site if it has a github.io domain.
With HTTPS enforcement enabled, HTTP requests to your GitHub Pages site will be transparently redirected to HTTPS.
我的GitHub Pages域名为levy9527.github.io
, Github支持使用https协议, 就算使用http访问, 也会自动变成https协议
HTTPS is not supported for GitHub Pages using custom domains.
但是, 如果我使用自定义的域名:levy.ren
, 那就只能使用http协议了
另外, Coding Pages 据说支持https, 但实际上如果使用https协议去访问:
会提示不是私密链接, 不知情的吃瓜群众肯定会吓一跳, 以为这是个不可描述的网站, 还不如Github Pages
真正支持https的, 目前我知道的是Gitlab
手机访问有点慢
没有缓存的情况下, 手机访问一般都要超过5秒. 以下是ping的结果:
Baidu 作为参考标准
1
2
3
4
5
6
7
8
9
10
11PING www.baidu.com (183.232.231.173): 56 data bytes
64 bytes from 183.232.231.173: icmp_seq=0 ttl=57 time=8.017 ms
64 bytes from 183.232.231.173: icmp_seq=1 ttl=57 time=18.729 ms
64 bytes from 183.232.231.173: icmp_seq=2 ttl=57 time=8.605 ms
64 bytes from 183.232.231.173: icmp_seq=3 ttl=57 time=18.766 ms
64 bytes from 183.232.231.173: icmp_seq=4 ttl=57 time=14.039 ms
64 bytes from 183.232.231.173: icmp_seq=5 ttl=57 time=9.764 ms
^C
--- www.baidu.com ping statistics ---
6 packets transmitted, 6 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 8.017/12.987/18.766/4.505 msGithub 的确有点慢
1
2
3
4
5
6
7
8
9
10
11PING levy9527.github.io (151.101.100.133): 56 data bytes
64 bytes from 151.101.100.133: icmp_seq=0 ttl=54 time=49.669 ms
64 bytes from 151.101.100.133: icmp_seq=1 ttl=54 time=45.325 ms
64 bytes from 151.101.100.133: icmp_seq=2 ttl=52 time=47.119 ms
64 bytes from 151.101.100.133: icmp_seq=3 ttl=54 time=58.865 ms
64 bytes from 151.101.100.133: icmp_seq=4 ttl=52 time=45.123 ms
64 bytes from 151.101.100.133: icmp_seq=5 ttl=52 time=47.915 ms
^C
--- levy9527.github.io ping statistics ---
6 packets transmitted, 6 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 45.123/49.003/58.865/4.673 msCoding 比Github快很多
1
2
3
4
5
6
7
8
9
10
11PING levy9527.coding.me (45.249.246.131): 56 data bytes
64 bytes from 45.249.246.131: icmp_seq=0 ttl=48 time=26.340 ms
64 bytes from 45.249.246.131: icmp_seq=1 ttl=48 time=15.934 ms
64 bytes from 45.249.246.131: icmp_seq=2 ttl=50 time=16.471 ms
64 bytes from 45.249.246.131: icmp_seq=3 ttl=50 time=15.098 ms
64 bytes from 45.249.246.131: icmp_seq=4 ttl=48 time=20.288 ms
64 bytes from 45.249.246.131: icmp_seq=5 ttl=50 time=24.285 ms
^C
--- levy9527.coding.me ping statistics ---
6 packets transmitted, 6 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 15.098/19.736/26.340/4.306 msGitlab 一直没有ping通过
1
2
3
4
5
6
7
8
9
10PING levy9527.gitlab.io (104.208.235.32): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
Request timeout for icmp_seq 4
Request timeout for icmp_seq 5
^C
--- levy9527.gitlab.io ping statistics ---
7 packets transmitted, 0 packets received, 100.0% packet loss
从ping的结果来看, 似乎Coding比较优秀, Gitlab根本不值一提, 其实不然.
首先, ping不通不代表访问不了, 再有就是在PC端访问这些Pages平台其实无太大差异, 关键还是得看移动端的表现, 这点下面会讲
微信访问提示不安全
- Github
访问自定义域名地址会出现提示
但如果直接访问 https://levy9527.github.io 就没问题
我猜测微信检测到网页使用的是外国的ip, 且使用http就会这样, 因此我想到的解决办法是为博客链接添加https
- Coding
在微信里访问http://levy9527.coding.me/levy9527/ 将得到大大的惊喜
访问原地址都不行, 还是直接被禁的那种. 所以说, 就算Coding的ping值令人满意, 我也不会考虑它的
- Gitlab
直接访问 https://levy9527.gitlab.io 没问题, 换成自定义域名 http://levy.ren 就提示是否继续访问, 表现得跟Github一样
但Gitlab是支持自定义域名https的, 我想, 把博客迁移到Gitlab, 再申请个https, 问题就解决了吧…
令人震惊的真相
本文到这里应该是要结束了. 但期间我上了个厕所, 脑子里突然灵光一现, 想起了一件事.
我有不止一个域名, 我也曾为域名申请过腾讯企业邮. 其中levy.ren不支持, levy.work支持. 那么, 微信里的访问提示是否跟域名有关呢?
我试了一下, 果然如此. 我使用http://levy.work 在微信里访问, 根本没问题好吗!😱
如果说换个域名就能解决微信提示不安全的问题, 那其实https也没啥必要了, 那我根本不用迁移博客啦😓