开发者社区> 问答> 正文

如何在阿里云的 ECS 实例上安装并使用 Web 服务


您可以在实例上安装 Web 服务器,使实例对外提供 Web 服务。目前主流的 Web 服务器包括 nginx、Apache HTTP Server、IIS、Apache Tomcat 等。本文以 nginx 为例,说明如何在阿里云的 ECS 实例上安装 Web 服务器,并使其对外提供 Web 服务。

前提条件


您应该已经 创建了实例,并已经能正常 远程登录实例

操作步骤


操作步骤如以下流程图所示。

根据实例的操作系统,您需要选择不同的操作:



Linux 实例


在这一部分,示例中使用的 Linux 实例上运行的镜像为 CentOS 6.8 64位。您应该按以下步骤在 Linux 实例上安装并运行 nginx 服务器:

  1. 根据 Linux 实例的网络类型,在实例所在安全组中添加如下安全组规则:
    网络类型网卡类型规则方向授权策略协议类型端口范围授权类型授权对象优先级
    VPC 网络不需要配置入方向允许HTTP(80)80/80地址段访问0.0.0.0/01
    经典网络公网


    如果您需要使用其他端口,请参考 这里

  2. 远程登录 Linux 实例

  3. 运行命令 yum install nginx,安装 nginx。

  4. 运行命令 service nginx start,启动 nginx。

    如果报错:[backcolor=transparent] Starting[backcolor=transparent] nginx[backcolor=transparent] :[backcolor=transparent] nginx[backcolor=transparent] :[backcolor=transparent] [backcolor=transparent] [[backcolor=transparent] emerg[backcolor=transparent] ][backcolor=transparent] socket[backcolor=transparent] ()[backcolor=transparent] [backcolor=transparent] [::]:[backcolor=transparent] 80[backcolor=transparent] failed [backcolor=transparent] ([backcolor=transparent] 97[backcolor=transparent] :[backcolor=transparent] [backcolor=transparent] Address[backcolor=transparent] family [backcolor=transparent] not[backcolor=transparent] supported [backcolor=transparent] by[backcolor=transparent] protocol[backcolor=transparent] )
  5. [backcolor=transparent]                                                        [backcolor=transparent][[backcolor=transparent]FAILED[backcolor=transparent]]

表示不支持 IPv6 地址。您需要通过 vi /etc/nginx/conf.d/default.conf 将文件中的 server 监听端口部分做如下修改:
  1. [backcolor=transparent]server [backcolor=transparent]{
  2. [backcolor=transparent] listen       [backcolor=transparent]80[backcolor=transparent] default_server[backcolor=transparent];
  3. [backcolor=transparent] [backcolor=transparent]#listen       [::]:80 default_server;

如果是 CentOS 7 以上的系统,运行命令 systemctl start nginx 启动 nginx。
运行命令 netstat -an | grep 80,查看 TCP 80 是否被监听。 如果返回以下结果,说明 TCP 80 端口的 Web 服务启动。
  1. [backcolor=transparent]tcp        [backcolor=transparent]0[backcolor=transparent]      [backcolor=transparent]0[backcolor=transparent] [backcolor=transparent]0.0[backcolor=transparent].[backcolor=transparent]0.0[backcolor=transparent]:[backcolor=transparent]80[backcolor=transparent]              [backcolor=transparent]0.0[backcolor=transparent].[backcolor=transparent]0.0[backcolor=transparent]:*[backcolor=transparent]               LISTEN

在本地机器的浏览器中输入实例的公网 IP 地址,如果出现以下页面,说明您已经在 ECS 实例上正确安装了 nginx 服务器。


修改 Linux 实例的 HTTP 访问端口(本示例中改为端口 81):
  1. 在 ECS 控制台上,根据 Linux 实例的网络类型,在实例所在安全组中添加如下安全组规则:
    网络类型网卡类型规则方向授权策略协议类型端口范围授权类型授权对象优先级
    VPC 网络不需要配置入方向允许自定义 TCP81/81地址段访问0.0.0.0/01
    经典网络公网
  2. 登录实例,通过 vi /etc/nginx/conf.d/default.conf 将文件中的 server 监听端口部分做如下修改:[backcolor=transparent]server [backcolor=transparent]{
  3. [backcolor=transparent] listen       [backcolor=transparent]81[backcolor=transparent] default_server[backcolor=transparent];
  4. [backcolor=transparent] [backcolor=transparent]#listen       [::]:80 default_server;
保存并退出编辑。重新启动 nginx。在本地机器的浏览器中输入实例的 公网 IP 地址:81。


Windows 实例


在这一部分,示例中使用的 Windows 实例上运行的镜像为 Windows Server 2012 R2 64 位。
您应该按以下步骤在 Windows 实例上安装并运行 nginx 服务器:

  1. 根据 Windows 实例的网络类型,在实例所在安全组中添加如下安全组规则:
    网络类型网卡类型规则方向授权策略协议类型端口范围授权类型授权对象优先级
    VPC 网络不需要配置入方向允许HTTP(80)80/80地址段访问0.0.0.0/01
    经典网络公网


    如果您需要使用其他端口,请参考 这里

  2. 远程登录 Windows 实例

  3. http://nginx.org/en/download.html 上下载需要的 nginx 压缩文件。在本示例中,选择下载 nginx/Windows-1.13.4。

  4. 右击压缩文件,选择 [backcolor=transparent]全部提取 到任意路径下。本示例中路径为 C:\nginx-1.13.4。

  5. 启动命令提示符,运行以下命令:[backcolor=transparent] cd C[backcolor=transparent]:[backcolor=transparent]\nginx[backcolor=transparent]-[backcolor=transparent]1.13[backcolor=transparent].[backcolor=transparent]4[backcolor=transparent]\nginx[backcolor=transparent]-[backcolor=transparent]1.13[backcolor=transparent].[backcolor=transparent]4[backcolor=transparent] [backcolor=transparent]#转到 C:\nginx-1.13.4\nginx-1.13.4
  6. [backcolor=transparent] start nginx [backcolor=transparent]#启动 nginx

运行命令 netstat -aon | findstr :80,查看 TCP 80 是否被监听。 如果返回以下结果,说明 TCP 80 端口的 Web 服务启动。
  1. [backcolor=transparent]TCP    [backcolor=transparent]0.0[backcolor=transparent].[backcolor=transparent]0.0[backcolor=transparent]:[backcolor=transparent]80[backcolor=transparent]           [backcolor=transparent]0.0[backcolor=transparent].[backcolor=transparent]0.0[backcolor=transparent]:[backcolor=transparent]0[backcolor=transparent]              LISTENING       [backcolor=transparent]1172

在浏览器中输入实例的公网 IP 地址,如果出现以下页面,说明您已经在 ECS 实例上正确安装了 nginx 服务器。


按以下步骤修改 Windows 实例的 HTTP 访问端口(本示例中改为端口 81):
  1. 在 ECS 控制台上,根据 Windows 实例的网络类型,在实例所在安全组中添加如下安全组规则:
    网络类型网卡类型规则方向授权策略协议类型端口范围授权类型授权对象优先级
    VPC 网络不需要配置入方向允许自定义 TCP81/81地址段访问0.0.0.0/01
    经典网络公网
  2. 在 C:\nginx-1.13.4\nginx-1.13.4\conf 目录下,打开 nginx.conf 文件,在以下内容里,将端口号修改为您需要的值,比如本例中将 80 改为 81。[backcolor=transparent] server [backcolor=transparent]{
  3. [backcolor=transparent]     listen       [backcolor=transparent]81[backcolor=transparent];
  4. [backcolor=transparent]     server_name  localhost[backcolor=transparent];
重新启动 nginx。在本地机器的浏览器中输入 实例的公网 IP 地址:81。

展开
收起
boxti 2017-10-19 10:39:53 5953 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
阿里云云原生 Serverless 技术实践营 PPT 演讲 立即下载
阿里云产品十月刊 立即下载
基于阿里云构建博学谷平台实时湖仓 立即下载