网站建立过程

首先是在Google Domain 上注册了域名 zhangxiaopan.net,第一年12。奇怪的是 zhangxiaopan.com 竟然有人已经注册了。域名zhangxiaopan.me也空着,但是第一年要20,还是算了吧。

既然Google 的云计算平台 GCE有300的免费额度,直接使用 Bitnami wordpress for GCE,按照手册一步步搞就行了。

SSL 配置比较麻烦一些,因为插件生成的证书文件名和手册给出的Apache例子文件名不一样。按照bitnami的文档 How To Install The WP Encrypt Plugin For Let’s Encrypt Certificate Generation?搞完以后,我的做法是:

  • 建立一个 /opt/bitnami/apache2/conf/bitnami/zhangxiaopan.net 的目录,然后把 /opt/bitnami/apps/wordpress/letsencrypt/live/zhangxiaopan.net/ 下面的 cert.pem, private.pemchain.pem 拷贝过去,然后改为只有Root 可以读写(400)。
root@wordpress-2-vm:/opt/bitnami/apps/wordpress/conf# ls -l /opt/bitnami/apps/wordpress/letsencrypt/live/zhangxiaopan.net/
total 24
-rw-rw-r-- 1 daemon daemon 2175 Jan 20 04:09 cert.pem
-rw-rw-r-- 1 daemon daemon 1647 Jan 20 04:09 chain.pem
-rw-rw-r-- 1 daemon daemon 3823 Jan 20 04:09 fullchain.pem
-rw-rw-r-- 1 daemon daemon 1809 Jan 20 04:09 last.csr
-rw-rw-r-- 1 daemon daemon 3272 Aug  6 14:37 private.pem
-rw-rw-r-- 1 daemon daemon  800 Aug  6 14:37 public.pem
root@wordpress-2-vm:/opt/bitnami/apps/wordpress/conf# ls -l /opt/bitnami/apache2/conf/bitnami/zhangxiaopan.net
total 16
-rw------- 1 root root 2175 Feb  4 22:09 cert.pem
-rw------- 1 root root 1647 Feb  4 22:09 chain.pem
-rw------- 1 root root 3272 Feb  4 22:09 private.pem
  • 修改Apache 配置文件(/opt/bitnami/apache2/conf/bitnami/bitnami.conf)如下:
# Install letsencrypt certificate.
SSLCertificateFile "/opt/bitnami/apache2/conf/bitnami/zhangxiaopan.net/cert.pem"
SSLCertificateKeyFile "/opt/bitnami/apache2/conf/bitnami/zhangxiaopan.net/private.pem"

# Some post post says the next line is necessary for mobile browser, but I found
# new Andorid is happy without it.
SSLCertificateChainFile "/opt/bitnami/apache2/conf/bitnami/zhangxiaopan.net/chain.pem"
  • 重新启动Apache就好了。
$ sudo /opt/bitnami/ctlscript.sh restart apache

证书每三个月过期一次,可以在插件的界面里面生成新的证书文件,然后按照上面的步骤把新文件拷贝到相应的位置,重新启动Apache就好了。需要注意的是这个插件更新证书的时候要使用HTTP,而不能使用HTTPS。所以要么平时就打开HTTP,要么在更新证书的时候打开HTTP,具体的方法在这里

之前从一个基本的 Ubuntu Image开始,又是自己装Apache,MySQL,Wordpress,然后又是配置PermnentLink,折腾了很久,文件上传还不工作,最终放弃了。

最后赞一下 Letsencrypt,给大家提供免费的证书,真是不错。这个最初还是从康神的博客看来的。

Leave a comment