全面迁移到 Google Cloud Platform

2017 年 4 月更新:由于 GCE 在国内经常不稳定,本站主机已经换到了 TlOxygen 的虚拟主机上了。

关于 GCE 的使用方法,可以参见 Google Compute Engine 新手教程及使用体验

这一周,终于将这个网站全面迁移到 Google Cloud Platform 上了。WordPress 原站服务器从 OVH 迁移到了 Google Compute Engine(简称 GCE),对象存储从 Amazon S3 换到了 Google Cloud Storage。同时,原先自建的 DNS 也换到了 Google Cloud DNS。

继续阅读“全面迁移到 Google Cloud Platform”

从 Vultr 迁至 OVH & SunnyVision

已经用了 Vultr 大概一个季度了,Vultr 的带宽、免费的 50GB 附加 SSD 等都是非常不错的,而且 Vultr 按小时的计费模式,超快速的部署都是十分棒的。但是 Vultr 的价格还是偏高,有不少大的 VPS 提供商都比它便宜了,而且 Vultr 的 VPS 方案的内存实在是太小了,每月 20 美元,却只能买到 2GB 内存的主机,实在不爽。于是我便开始寻找其他可供替代的主机商: 继续阅读“从 Vultr 迁至 OVH & SunnyVision”

在自己服务器上安装 GitLab,代替 GitHub!

我的服务器上部署的代码、配置文件等内容大多是使用 Git 进行版本控制。为了能够使用、配置起来更方便,通常使用一整套系统去管理。很显然,在一些代码和配置文件里会有一些机密的内容,如一些密钥什么的,所以必须不能公开。GitHub.com 虽然提供了 Private 存放处功能,但是由于此功能是付费的,而且对于 Organization 的 Plan 还是极贵,并不十分划算;就算能有免费的 Private 存放处,把自己的很多重要的密钥放在第三方服务器上还是很不安全,所以能够 Host 在自己的主机上的,并且能够替代 GitHub.com 的软件/服务就是不错的选择。

本文将讲一下我在自己服务器上安装 GitLab 遇到的坑,进阶使用,包括使用 .gitlab-ci.yml 文件实现自动 Build,实时同步镜像到 GitHub。

继续阅读“在自己服务器上安装 GitLab,代替 GitHub!”

本网站底层的具体配置和优化

2017 年 6 月更新:时隔一年,最新的底层优化请见本站备案后的各种优化及底层具体配置

维护这个网站已经有一段时间了,是时候谈一谈这个网站的具体细节了。

我有多个网站,好几个不同的域名,不过这篇文章就只从 ze3kr.com 这一个网站做具体的介绍。跳过域名注册和 DNS 解析,直接从网站 Web 服务用的主机开始。 继续阅读“本网站底层的具体配置和优化”

国内外 DNS 权威解析服务商对比

DNS(域名系统)是因特网的一项服务。它能够将域名指向一个 IP(服务器),这样你就可以通过域名来访问一个网站。能够通过域名访问的网站,都需要一个 DNS 服务器。这里指的是给站长的域名使用的权威 DNS 而并非缓存 DNS。

本文包括 CloudXNS、Route 53、Cloudflare、Google Cloud DNS 以及 Rage4 的全面对比 继续阅读“国内外 DNS 权威解析服务商对比”

本站使用 PHP7.0

今天,再次将整个服务器迁移了,这一次迁移到了更加开放的 Vultr。迁移的同时,顺便把 PHP 升级到了 PHP7.0,我升级 7.0 的最大动力就是它强大的运算性能,实际使用下来,大概是 5.6 版本的 2~3 倍。Vultr 价格低廉,而且运算性能超越了众多主机提供商,有日本、欧洲和美国等地服务器。

同样的运行实例,只有 PHP 版本不同,计算速度对比:

本站使用了 KeyCDN 作为前端加速,代替 CloudFlare

注:2016 年五月中旬,服务器已经不在 CloudFlare/KeyCDN 上了。

由于之前在 CloudFlare 上感觉起来还是比较慢。要想加速,需要开启 CloudFlare 的 Cache Everything,这样存在很多问题,比如过滤 Cookie,而且 CloudFlare 在中国速度也不佳,于是现在换用了 KeyCDN。

KeyCDN 会缓存页面上所有的内容,包括 HTML 页面。缓存周期为 1 周,自动使用 Let’s Encrypt 的 SSL。在中国有香港节点。我已经在后台配置好,当有以下操作时,清除该页缓存和首页缓存:

  • 文章/页面内容更新/发布
  • 文章/页面被删除

现在页面的速度,堪称完美!

你或许也想尝试这样做?现在只需要安装我的插件并按照说明对其进行配置即可。

建立自动负载均衡与服务器集群并存的博客系统

注:2016 年五月中旬,服务器已经不再是这样了。

2016-01-30 这一天,TLO XYZ 的博客系统(包括 ze3kr.com)整个迁移到了 “一个” 新的服务器,准确的说,服务器已经不止一个,而是许多个服务器负载均衡。

我们的服务器选用的是 Amazon 提供的的服务器,使用多个 EC2 (环境:PHP+Apache)服务器和一个 RDS(环境:MySQL)。EC2 上的程序代码可以直接使用 Git 部署,方便至极。我们使用的博客系统软件是 WordPress,这个软件分别放到了多个 EC2 上,配置都完全相同(每次 Git Push 时都会同步)。每一个 EC2 都使用同一个 RDS 作为数据库,这样可以保证发布文章等操作都是实时的。

继续阅读“建立自动负载均衡与服务器集群并存的博客系统”

静态网页的优与劣

静态网页,即纯 HTML 的网页,博客中的每一个页面均为一个 .html 文件。

首先这里存在一个误区,一些人认为静态网页是不能很方便更新的,实际上静态网页是可以很方便更新的,借助静态网页生成器,更新它并不复杂。当它需要更新一篇文章时,需要重新生成主页和这篇文章,还好这一切一般不到一分钟就能完成。

如果博客要使用动态网页呢?这样做当然是可以的,现在有很多成熟的软件,比如 WordPress,运行在 PHP 环境中,需要 MySQL 数据库。每次访问网页时,需要服务器读取数据库的内容(或从缓存中读取),再处理成有一定样式的 HTML 返回给用户。当然动态网页能够实现一切静态网页的功能,当然还能有更多的功能,比如图片上传,定时发布等。

既然动态网页能实现一切静态网页的功能,那么静态网页有什么优势呢?

继续阅读“静态网页的优与劣”

我的所有网站迎来年末更新

年末,我将我的所有网站迁移到了一个性能还可以的香港服务器上,同时安装了截止到目前最新的 WordPress、Piwik 和 MediaWiki,都开启了 PHP 缓存。

ZE3kr 网站使用 WordPress

最终,我还是选择使用 WordPress 作为博客管理系统(CMS),因为 WordPress 有很多插件、接口,还有移动客户端,使用起来非常方便。从此我的网站也不再是静态网页,而是动态的了。

除此之外,ZE3kr 网站不再使用 Vimeo 作为视频播放器,而是直接使用 WordPress 媒体播放器,视频资源放在自己的服务器上(540p 1000kbps)。

不过很可惜,目前不再提供自动 Exif 信息和 GPS 信息,在 2016 年重新添加了对 exif 的支持。

使用 WordPress 后的新特技

现在页面上有下雪彩蛋,直到 1 月 4 日前都一直会 “下雪”。

现在在首页/分类页中可以直接播放视频、查看文章,而不需要点开文章(长篇幅的文章除外)。

ZE3kr 微信订阅号建成!

ZE3kr 是郭泽宇用于发布内容的作者名,发布的内容汇集以科技、摄影为主的原创精选文章、视频、图片、短文和 App 推荐。为了方便在微信的用户能够获取到网站上的最新消息,现成立微信号。

微信号主要转发网站上的文章,但是为了在微信上能够有更好的体验(比如查看文章中的超链接、引用、视频等高级内容),你可以点击每一片文章左下角的阅读原文。

关注此微信订阅号

打开微信扫一扫,即可关注此订阅号,微信号 ZE3kr_service

GitHub 实时同步到 GitCafe,并解决百度无法抓取 GitHub Pages 问题

本文将提供一个把 GitHub 自动且实时地同步到 GitCafe 方案。

如果你是 GitHub Pages 用户,你需要进行如下操作:

  1. 首先,需要给 GitHub 项目改个名,如果你原先是 [用户名].github.io 形式的话,请改成别的,改完后把 master 分支改名为 gh-pages。
  2. 然后在 GitCafe 上创建一个存放处,存放处名称需要是你的用户名,设置好自定义域名等等。
  3. 待完成“步骤”后,修改域名解析。

继续阅读“GitHub 实时同步到 GitCafe,并解决百度无法抓取 GitHub Pages 问题”