如何部署一个静态网站到 aliyun+ubuntu+nginx 环境?
2017年2月16日

知道如何部署静态网站,是部署 Web App 的前提。

申请 Aliyun ESC 服务器?

登录 https://www.aliyun.com/ ,到

产品 -> 云服务器 ECS

打开页面,选择 立即购买 ,一般我选择 包月模式,不过这次我选 按量计费,便于我演示完了删除这个 ESC 。下面的各项基本都保留默认值就可以了:

最后点 去开通。到

管理控制台 -> 实例

可以看到 monkey 这台机器列出了。稍微等会,等这个机器的状态由启动中,变成正运行之后,就可以拷贝它的公网 IP ,然后到我们自己的命令行进行登录了:

ssh root@114.215.101.208

输入刚刚我们自己设置的那个密码就可以登录成功了。

创建普通用户

Ubuntu 系统的使用传统还是用一个有 sudo 权限的普通用户来操作,所以我们先来创建这个用户

adduser peter --ingroup sudo

回车,会显示

Enter new UNIX password:

这里我们可以输入一个简短的密码,后续我们再次登录系统的时候,就可以用 peter 这个用户名,加上这个简单的密码进行登录了。

后续让填写 Full Name 等等信息,不用填,直接回车跳过即可。

安装 Nginx 服务器

以前几年我都是用 Apache 服务器的,但是后来大家都说 Nginx 更高效,所以我就切到 Nginx 了。Nginx 是一个HTTP 服务器软件。我们的静态网站放到它之上,就可以在公网上去访问了。

先来安装 nginx

sudo apt-get install -y nginx

装好之后,到浏览器地址栏中输入服务器的公网 IP,就可以看到 nginx 的欢迎页面了。

部署自己的网站到 Nginx

现在在我的开发机器上有一个文件夹 peter-site ,里面有一个静态网页 index.html 。

首先我要把这个文件夹上传到服务器之上

scp -r peter-site peter@114.215.101.208:

注意末尾的 : 一定要添加。

接下来,我们跳转到 nginx 的配置位置,然后化身超级用户:

cd /etc/nginx/
sudo su
cd site-enabled/

把默认的配置删除

rm default

然后创建自己的配置文件

vim peter.conf

技巧:如果对 vim 使用不熟悉,也可以本地把 peter.conf 写好,然后 scp 到服务器上。

peter.conf 的内容如下:

server {
  listen 80;
  root /home/peter/peter-site/;
}

配置保存好后,需要运行

service nginx reload

来重新加载一下新的配置。这样,到浏览器中就可以通过公网 IP 看到我们自己的 index.html 页面了。

如何做域名指向呢?

参考:到 godaddy 上设置 dns 域名指向