在 Google Cloud Platform 上建立 WordPress 网站

本篇文章将叙述 hiDandelion's Space 的出生之旅,说明在 GCP 上搭建 WordPress 博客的基本方法。

WordPress 在 Google Cloud Platform 上是有现成可直接部署的镜像以供直接使用的,这样就无需进行基本环境的搭建,极大简化搭建 WordPress 网站的过程。在 Marketplace 中就可以找到可用的镜像。

gcp_website_1

搜索 “WordPress” 就能看到相关的应用镜像。这里选择 WordPress with NGINX and SSL Certified by Bitnami and Automattic,也就是基于 Bitnami 的 WordPress 并且已经附带SSL证书,方便后面配置SSL证书。Bitnami 是这个程序包的一个提供和验证方,有关 Bitnami 的更多信息,可以访问其官方网站

gcp_website_2

点击可以在详情页可以获取该镜像的详细系统信息和所附带的环境。

gcp_website_3

下面非常机械化地配置好所需配置。这里 Firewall 栏目要选择上 Allow HTTP traffic from the Internet 和 Allow HTTPS traffic from the Internet 以允许HTTP和HTTPS的访问,当然如果不需要 HTTP 访问也可以关闭 Allow HTTP traffic from the Internet,也可以在创建完成后进行更改。

gcp_website_4

这一步完成之后就可以看到站点地址、管理员地址和相应的账号密码了,以及管理按钮和支持文档。这时候最基本的网站建设就完成了,也就是说这个网站已经可以正常访问了。

gcp_website_5

这时候不能忘记绑定一个 IP 地址到这个服务器。到 VPC network 栏目,找到当前使用的 IP 地址,将其设置为 Static 类型就可以了。

gcp_website_6

下面就是设置域名,在所处的 DNS 服务商添加 A 记录,添加 @ 记录就可以将所有子域名绑定到网站 IP,或者手动将所需子域名绑定到IP即可。

配置完域名解析后还要配置一下 SSL 证书,以使网站支持 HTTPS 访问,以免用户访问时造成信息泄漏,同时也能去掉浏览器的“不安全”提示。

首先是申请一个 SSL 证书,个人使用的话可以考虑 TrustAsia 或者是 Let’s Encrypt 提供的免费 SSL 证书。申请完后将会得到一些密钥,对于我们现在使用镜像的环境,我们需要 crt 和 pem 两个证书文件,这两个证书文件是通过对密钥进行一定拼接得到的,当然如果有专门的证书管理软件也能自动导出,具体得到证书文件的方法请自行搜索。

为了将 SSL 证书上传到服务器,我们首先要打开远程 SSH 连接,GCP 是默认关闭用户自行进行 SSH 连接的功能的,默认只能在网页端使用,所以我们先使用网页 SSH 打开远程连接权限。进入网页版 SSH 只需点击上面 WordPress 详情页的 SSH 按钮即可,一个新的窗口将会打开,在上面就可以运行命令了。

gcp_website_7

首先运行一下命令更改 SSH 配置文件。

sudo -i
vi /etc/ssh/sshd_config

在 vim 窗口中键入i即可进入“插入模式”,即可开始修改文档内容。PermitRootLogin 和 PasswordAuthentication 这两个配置条目原本就存在,找到后将 “no” 修改为 “yes”,随后按 ESC 键,输入 :wq 并回车就修改完成了。

# Authentication:
PermitRootLogin yes

# Change to no to disable tunnelled clear text passwords
PasswordAuthentication yes

随后运行以下命令设置 root 用户的密码并重启 SSH 服务。

passwd root

/etc/init.d/ssh restart

设置完成后就可以通过自己计算机上的 SSH 工具进行连接了。macOS 直接使用 Terminal 即可无需另外安装软件,Windows 还需另外自行搜索SSH工具并进行使用,优先考虑 PuTTYXShell 等软件。

下面以 macOS 为例。打开 Terminal,使用 scp 命令将 SSH 证书上传到服务器。注意 scp 应运行在本机 Terminal 中而不是先建立 SSH 连接后使用服务器的 Terminal。

scp的使用方法如下:

scp local_file [email protected]_ip:remote_folder

在这个例子中,我们具体使用以下命令,注意存储证书的本机路径和服务器 IP 需要相应修改。scp 传输过程和 ssh 连接相同,如果需要确认指纹信息键入 yes 即可。

scp ./server.crt [email protected]:/opt/bitnami/nginx/conf/server.crt
scp ./server.pem [email protected]:/opt/bitnami/nginx/conf/server.pem

至此服务器端的环境配置就完成了,这时就可以使用 HTTPS 协议和自己的域名进行后台登录进行 WordPress 的相关配置并编辑网站内容了。

留下评论