几个免费的服务器监控服务推荐

有了服务器监控服务,就能知道网站运行的情况以及在线时间。当服务器出现问题时,便能第一时间收到通知。个人网站运维需要这些服务来保证稳定性。但是,大量的此类服务都是面向企业,导致价格十分昂贵,而且并用不到其所提供的功能。本文就给各位站长推荐几个免费的服务器监控服务。

继续阅读“几个免费的服务器监控服务推荐”

DNS——基础篇

DNS(域名解析系统)的工作使命,就是服务于与域名相关的内容的底层。是域名(如:example.com)的核心组成部分。绝大多数与域名相关的东西,都离不开它。比如:

  • 访问一个网站,通常是输入一个域名(如 https://www.example.com
  • 发送邮件@ 后面是主机名,而主机名通常是个域名(如 webmaster@example.com

整个 DNS 具有复杂的层次,这对刚开始购买域名的人有很大的疑惑。本文将详尽的介绍 DNS 的工作原理,有助于更深刻的理解。本文将介绍:

  1. 在客户端上是如何解析一个域名的
  2. 在 DNS 缓存服务器上是如何逐级解析一个域名的

同时还包含:

  1. 域名的分类
  2. 什么是 Glue 记录
  3. 为什么 CNAME 不能设置在主域名上

继续阅读“DNS——基础篇”

修复 WordPress 2017 主题中奇怪字形的 Bug

最近国外掀起了一股用 system-font 的热潮(额,好像国内一直都在用系统字体)。最近更新了 WordPress 4.7,并用上了其 2017 主题,这个主题正是使用系统字体。但是在 macOS 上查看发现中文显示的是繁体字形。

实在是太丑了,究其原因,其实是因为新版的主题的 system-font 用的是繁体中文字体:

继续阅读“修复 WordPress 2017 主题中奇怪字形的 Bug”

全面迁移到 Google Cloud Platform

2017 年 4 月更新:本站已经换到了 TlOxygen 的虚拟主机上了,并使用了 CloudFront CDN 全站加速,基本脱离了 Google Cloud。

关于 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”

使用 AMP 构建超快的移动页面

AMP (Accelerated Mobile Pages) 是 Google 的一个开源的项目,通过使用 AMP HTML,可以极其显著的提升网页加载速度。最近我在移动设备上使用 Google 的时候,发现很多网站都开始使用了 AMP。在从 Google 上进入一个 AMP 页面时速度更是异常的快,快到超乎想象——延迟几乎为零。本站也配置了 AMP,本文对 AMP 的一些特性进行一些分析,并介绍如何在 WordPress 上支持 AMP,并开发插件对其自定义。

继续阅读“使用 AMP 构建超快的移动页面”

利用 GCE 建立一个 Anycast 网络,超快的香港节点,Google Cloud CDN

在上一篇文章中,我简单的介绍了 Google Compute Engine(简称 GCE)的基础使用。这篇文章我将介绍如何利用 GCE 建立一个 Anycast 网络,并测试了其速度。

想要实现这个功能,就需要使用 Cross-Region Load Balancing(跨地区的负载均衡),此功能就相当于一个 HTTP(S) 的反向代理,所以只能针对 HTTP/HTTPS 请求进行负载均衡。

继续阅读“利用 GCE 建立一个 Anycast 网络,超快的香港节点,Google Cloud CDN”

Cloudflare 的全新功能体验——Load Balancing、Rate Limiting

Cloudflare 在 2016 年末终于增加了两个重磅的功能,分别是:

  • Load Balancing(原名:Traffic Manager)
  • Rate Limiting(原名:Traffic Control)

Load Balancing 支持更加高级的负载均衡功能,并终于支持了大家很需要的跨区域负载均衡功能;Rate Limiting 支持了高级的访问次数限制功能。越来越多的原本需要在服务器上配置的功能,现在在 Cloudflare 上也能进行配置了。(目前这两个功能还属于 Beta 阶段,需要认证用户才能使用)

继续阅读“Cloudflare 的全新功能体验——Load Balancing、Rate Limiting”

Google Compute Engine 新手教程及使用体验

最近想要寻找按流量计费、连接中国速度比较快的 VPS,最终选择了 Google Compute Engine(下文简称 GCE)的亚洲区。GCE 的后台配置页面虽不能在中国访问,但是其 GCE 实例是可以在中国访问的。

创建一个新的 GCE 的流程十分简单,只需要自定义配置、选择操作系统、配置 SSH Key,然后选择创建就好了,整个流程十分像 VPS,但是可自定义的功能却远比 VPS 多。

继续阅读“Google Compute Engine 新手教程及使用体验”

用回 WordPress 自带评论系统

最近 Disqus 被某国的墙搞的十分不稳定,于是又用回了 WordPress 自带的评论系统,但是这个评论系统却不带评论者被回复时的邮件提醒。我有自己的发信服务器(AWS SES)系统,所以理论上可以配合插件实现这个效果。但是我看了很多插件,基本上操作页面都太复杂,而且回复的邮件通常不支持中文,我只需要一个简单的回复系统,不用那么麻烦,于是干脆自己开发一个,最终比较完美的实现了这个功能。

阅读更多关于代码的实现

如何配置以实现纯 IPv6-Only 网络访问

在今年 5 月 4 日,Apple 就开始要求新的应用程序支持 IPv6 DNS64/NAT64 网络,这意味着苹果开始力推 IPv6 网络,在苹果的官网上就有介绍一些 IPv6 的优势,主要来说就是对移动网络更加友好,并能提高一些性能,减少一些传输上的开销。

最近,我也将我的所有服务器全面部署 IPv6,完全支持 IPv6-Only 网络。

继续阅读“如何配置以实现纯 IPv6-Only 网络访问”

自建 PowerDNS 智能解析服务器

最近我越来越喜欢自建一些东西,比如 GitLab。今天我又把 DNS 服务器改成自建的了,分享一下经验(PS:现在为了实现根域名 CDN,我用换成了 Route 53):

本文的自建 DNS 是指的是权威 DNS,即给自己的域名配置的 DNS,而非在客户端配置的缓存 DNS。

优缺点

首先,我先说用自建 DNS 服务器的致命坏处

  1. 如果那天自己的服务器挂了,整个域名相关服务都会挂,即使你邮件收信服务器是用的是第三方的,你也不能收信了
  2. 基本上必须是开放端口,并有固定 IP(而且最好还需要至少两个 IP) 的 VPS(当然也可以是两个主机,只需要保证配置文件完全相同即可)
  3. 个人一般关于 DNS 运维经验不足,容易导致配置错误
  4. 第三方 DNS 提供商基本都有 DDOS 防御,而你的服务器可不一定有,攻击者可以直接通过 L7 DNS Flood 攻击掉你的服务器,然后又回到第一个问题上了

使用自建 DNS 服务器优点:

继续阅读“自建 PowerDNS 智能解析服务器”

在自己服务器上安装 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 服务用的主机开始。 继续阅读“本网站底层的具体配置和优化”

新开发的网页软件:“猜猜我说了什么”

最近本人新开发了一个网页软件,中文名叫 “猜猜我说了什么”。它允许你输入一段话,等待完成计算后,分享当前页面给别人,别人就可以猜你刚才输入的内容。别人只能知道是猜对还是猜错,没有介于两者之间的提示。

它是什么原理?其实就是在本地通过某种不可逆的算法对你所输入的内容进行加密,然后将算出来的一段密码放在网址上。由于不可逆,所以几乎是没有可能对其进行解密的,只能通过猜或者是暴力破解(几乎不可能做到)的方法。具体的算法和实现是这样的 继续阅读“新开发的网页软件:“猜猜我说了什么””

本站使用 PHP7.0

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

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

iOS 9.3 Safari 点击不再有延迟

iOS 9.3 在这周发布了,有一个很不起眼的改进:Safari 针对适配移动版的网页去掉了点击时的 300ms 延迟。对于普通用户来说,会发现浏览网页的速度似乎变快了。对于网页开发者来说,不再需要引入类似 FastClick 这样的 Hack 了。目前测试来看,双击放大的功能仍然可用,但是必须点击链接之外的地方才有效(否则就直接进入链接了)。早在去年,WebKit 就移除了这个延迟,在最新的 iOS 9.3 已经对 Safari 的 WebKit 内核做了更新。

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

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

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

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

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

WordPress 上的几个推荐安装的插件

EWWW Image Optimizer

无损及有损压缩 JPEG 和 PNG 图像,支持压缩已有的图像,可以加快访问者加载图片的速度。同时支持 JPEG 的渐进式加载。正常情况下,网速低时,图片是一点点从上往下加载,而使用渐进式加载,则是先加载这个图片的低分辨率版本,然后逐渐变得清晰。我已经成为这个插件的付费用户,能够进一步有损压缩 PNG 和 JPEG 格式图片、降低服务器 CPU 占用(否则每上传一张图片,CPU 都消耗很多)。不过最近使用了 Cloudflare 的 Polish 功能,就没有再在服务器上安装同类软件了。

Autoptimize

这个插件能够自动的合并 CSS 和 JS,并对其压缩,非常 继续阅读“WordPress 上的几个推荐安装的插件”

Piwik 与 WordPress 配合使用,建立强大统计系统

在配合使用之前,首先需要安装 Piwik。前往 Piwik 官网下载软件包,然后解压到服务器上。当然,如果你的服务器上支持一键安装 Piwik 那更好。需要 PHP 环境和 MySQL 数据库。安装只需要根据步骤一步步来就好了。最好和 WordPress 安装在一个主机下,这样更方便配合使用。

地理位置功能

前往设置中的地理位置页面,在页面左下角选择下载一个 GeoIP 数据库。下载了之后,你就可以使用 GeoIP (Php) 了,然而这个比较慢。我推荐你使用 GeoIP (PECL),如果你使用的是 cPanel,那么你可以直接在 Select PHP Version 页面中开启 GeoIP 模 继续阅读“Piwik 与 WordPress 配合使用,建立强大统计系统”

静态网页的优与劣

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

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

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

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

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