这次来介绍的是Azure Storage的另外一项功能static website,顾名思义就是静态网站,我们都知道storage是用来存放一些非结构化数据的,如果一个网站只包含静态内容的话,那么只要数据保存在storage里,那么用户其实就可以通过staticc website这个功能来让internet上的用户去访问这个网站,完全不需要一个host这个网站的中间件平台,对于一些小型网站来说,绝对节省费用的一大利器!


    之前这项功能其实只在Global Azure中有,但是现在21v的Azure也可以使用这项功能了


    概念上没有特别多可以说的,先来看下具体怎么操作


    1.首先来创建一个存储账户,这个过程是比较简单的,不多说

    Azure Storage系列之静态网站_第1张图片


    2.接下来我们需要创建一个叫$web的container,网站的代码都会被保存在这个container中,这样storage就会从这里去读取网站的内容,至于访问级别,并不需要特地设置成public,private也可以

    Azure Storage系列之静态网站_第2张图片



    3.接下来就是怎么把我们的代码上传到这个container的问题,有以下几种方法可以考虑


        1.Portal上传

        2.AzCopy

        3.Azure Storage Exploer

        4.Az PowerShell或者CLI


    这几种方法推荐使用第二种或者第三种,都是比较直观方便的,这里是直接用Azure Storage Explorer上传的代码文件


    Azure Storage系列之静态网站_第3张图片



    4.上传方式很简单,可以直接把整个文件夹上传上去

    Azure Storage系列之静态网站_第4张图片


    5.代码上传完成后,接下来,我们就可以在static website里直接开启这项功能,然后设置一个我们想要的主页

    Azure Storage系列之静态网站_第5张图片



    6.开启之后,我们会得到一个网站的endpoint,相当于就是这个网站的URL

    Azure Storage系列之静态网站_第6张图片


    7.尝试访问这个URL,我们就能看到我们的网站内容了!因为是匿名访问,所以就算我们storage访问级别是private也可以直接从internet访问

    Azure Storage系列之静态网站_第7张图片



    8.之后,如果说我们想要设置一个自己的域名的话,其实可以把域名添加到storage里,设置一个CNAME的DNS记录,跳转到我们之前得到的默认endpoint即可!这样下来体验就很类似一个正常的网站了

    Azure Storage系列之静态网站_第8张图片



    总体来说,操作方便,节省成本,相比用一个VM或者app service来host网站来说,要便宜不少


    不过相对来说也有一些限制

    1.不支持服务器端交互

    2.不支持CORS


    所以如果是复杂些的网站,还是考虑VM或者app service这样的功能更适合