如何解决由Google Domains托管的Google Compute Engine支持的WordPress网站...如何安装SSL?
看来Google有一些将SSL分配给App Engine产品的自动化方法,但是我只是在Compute Engine上安装了Wordpress,而没有通过App Engine进行任何设置。
我的域通过Google域托管。我已经将两者连接在一起,但是该网站未设置SSL,因为URL的网址不是http。
我需要启用App Engine还是可以为我的Compute Engine VM实例实现SSL证书?
很抱歉,如果这个问题很钝,那么云环境比我在使用虚拟主机时要更加技术性。
解决方法
在这种情况下,您无需使用App Engine,并且至少有两种解决方案:
解决方案1
您可以set up Load Balancer进入您的Wordpress网站-我认为这是最“无痛”的,最简单的。您也不必担心SSL证书本身(您将获得一个证书并自动更新)。
- create an unmanaged instance group,并包括运行Wordpress网站的VM
- reserve an IP(用于负载均衡器)
- 使用backend service创建负载均衡器(使用您的实例组创建新服务-这是创建LB的步骤之一)
- 在为LB创建前端时,选择Google Manged Certificate
现在,您必须将要解析的域定向到新IP(刚刚保留)。
解决方案2
获取自己的SSL证书-您可以从LetsEncrypt获取一个SSL证书。 从部署站点的方式来看,意味着您正在使用Apache2 Web服务器运行Debian 9。 您可以找到specific instructions for that scenario here(Certbot官方文档)。 比第一个解决方案麻烦得多,而且做起来困难得多。 您还可以找到detailed instructions here。
----------------- U P D A T E ----------------
如何使用控制台创建GCP HTTPS负载均衡器:
- 转到网络服务> Load Balancing,然后单击“创建负载平衡器”;选择“ HTTP(S)负载平衡,
- 选择“从Internet到虚拟机”,然后单击继续
-
name
-选择任何您喜欢的东西; -
backend configuration
-创建一个新的: - 随心所欲地命名您的服务(例如wordpress-lb),
-
backend type
-选择实例组 -
port
-选择HTTPS-为了更清晰起见,将其名称更改为https
- 在“ New backedn”窗口中选择您的实例组,并在“ port number”字段中输入80;无需更改其他选项,然后单击“完成”按钮。
-
health check
-选择“创建新的健康检查”-输入您喜欢的任何名称;无需触摸其他任何东西;点击“保存并继续” - 您的服务已准备就绪-单击底部的“创建”按钮。
- 单击“主机和路径规则”(仅供审核)
- 单击“前端配置”-输入名称,选择HTTPS协议
- 选择您先前保留的IP-它会出现在列表中(除非其他服务使用了它)
- 选择端口443
- 选择证书-如果您没有创建证书或上载证书的方法:
- 现在单击“创建”以创建新的负载均衡器并等待一会儿。有时,所有服务启动需要几分钟。
如果您想更详细地说明如何在GCP中创建负载均衡器,请查看this tutorial on GeekFlare。