在 Lightsail 中为 Nginx 实例配置IPv6连接 - Amazon Lightsail

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 Lightsail 中为 Nginx 实例配置IPv6连接

默认情况下,Amazon Lightsail 中的所有实例都为其分配了公有IPv4地址和私有地址。您可以选择IPv6为您的实例启用为其分配公有IPv6地址。有关更多信息,请参阅 Amazon Lightsail IP 地址启用或禁用。IPv6

IPv6为使用 Nginx 蓝图的实例启用后,您必须执行一组额外的步骤以使该实例知道其IPv6地址。在本指南中,我们将介绍必须对 Nginx 实例执行的附加步骤。

先决条件

满足以下先决条件(如果尚未满足):

  • 在 Lightsail 中创建一个 Nginx 实例。有关更多信息,请参阅创建实例

  • IPv6为你的 Nginx 实例启用。有关更多信息,请参阅启用或禁用IPv6

    注意

    2021 年 1 月 12 日当天或之后创建的新 Nginx 实例在 Lightsail 控制台中创建时默认IPv6处于启用状态。即使在创建实例时已默认启用,您也必须完成本指南中的以下步骤才能IPv6在实例IPv6上进行配置。

在 Nginx 实例IPv6上进行配置

完成以下步骤,在 Lightsai IPv6 l 中的 Nginx 实例上进行配置。

  1. 登录 Lightsail 控制台

  2. 在 Lightsail 主页的 “实例” 部分,找到您要配置的 Ubuntu 16 实例,然后选择基于浏览器的SSH客户端图标进行连接。SSH

    Lightsail 主页中基于浏览器的SSH客户端图标。
  3. 连接到实例后,输入以下命令以确定您的实例是否正在监听通过端口 80 的IPv6请求。一定要更换 <IPv6Address> 使用分配给您的实例IPv6的地址。

    curl -g -6 'http://[<IPv6Address>]'

    例如:

    curl -g -6 'http://[2001:0db8:85a3:0000:0000:8a2e:0370:7334]'

    您看到的响应与以下示例类似:

    • 如果您的实例未通过端口 80 监听IPv6请求,则您将看到一条带有连接失败错误消息的响应。您应继续完成此过程的步骤 4 到 9。

      IPv6未在实例上配置。
    • 如果您的实例正在监听通过端口 80 的IPv6请求,则您将看到包含您的实例主页HTML代码的响应,如以下示例所示。您应该到此为止;您无需完成此过程的第 4 步到第 9 步,因为您的实例已配置为IPv6。

      IPv6在实例上配置。
  4. 输入以下命令以使用 Vim 打开 nginx.conf 配置文件。

    sudo vim /opt/bitnami/nginx/conf/nginx.conf
  5. I 进入 Vim 的插入模式。

  6. 在文件中已有的 listen 80; 文本下面,添加以下文本。您可能需要在 Vim 中向下滚动才能看到需要添加文本的部分。

    listen [::]:80;

    完成后,文件将与以下内容类似:

    实例上的 Nginx 配置文件。
  7. ESC 键退出 Vim 的插入模式,然后输入 :wq! 并按 Enter 以保存您的编辑内容(写入),再退出 Vim。

  8. 输入以下命令以重新启动实例的服务。

    sudo /opt/bitnami/ctlscript.sh restart
  9. 输入以下命令以确定您的实例是否在监听通过端口 80 的IPv6请求。一定要更换 <IPv6Address> 使用分配给您的实例IPv6的地址。

    curl -g -6 'http://[<IPv6Address>]'

    例如:

    curl -g -6 'http://[2001:0db8:85a3:0000:0000:8a2e:0370:7334]'

    您看到的响应与以下示例类似。如果您的实例正在监听通过端口 80 的IPv6请求,则您将看到包含实例主页HTML代码的响应。

    IPv6在实例上配置。