最近用Flutter开发了一个新的应用,准备上架AppStore的时候遇到一个问题,就是通过什么途经能把自己的隐私html和官网html通过链接都显示出来呢?
经过一番的查找和研究后就准备用Github的Pages功能来解决这个问题。当然还有其他的途径,比如Cloudflare等,那我们看看具体的操作。
一:设置Gethub Pages
第一步:Github创建一个新的仓库 【建议仓库名尽量小写】
需要注意:这个仓库必须是公开Public性质的

第二步:去申请一个域名
这里不管是付费的还是Cloudflare一些免费的,这个看自己的情况,我们在这里就不多加赘述。
第三步:把自己的html文件上传到Github的仓库当中
具体涉及到html文件怎么写的自己搞定,现在AI编程软件那么多,写一个简单的html也是一件很容易的事情,我这里提一下,要是你的html里面想包含一些图片。然后你想把图片也上传到网站上,在html里面通过链接的形式去访问,我给大家推荐一个:ImgBB
它是不限制存储的总内存大小的,限制上传的图片大小不超过32MB,它会限制飞会员每月的图片上传次数或使用频率等。
第四步:我们需要Release一下这个仓库的内容
后面你要是修改了这个仓库里的东西,不管是添加文件还是修改内容,都需要重新Release,记得在Release的时候打好tag的标签。

第五步:设置Pages

需要注意的点:
-
Release你的库内容,不管是添加文件还是修改内容,都需要重新Release,记得在Release的时候打好tag的标签。
-
在Branch选对你Release的分支内容,这个很好理解,选中的分支不对就会导致你改动的内容不生效。
按照上面的步骤,我们Github的Pages就已经设置成功了,我们就可以通过上面的链接访问我们的这个html文件,我们的隐私的链接是不是就生成好啦~
那接下来就是怎样把链接前面的仓库域名改【上面示例图片中的geniuszhangxu.github.io的内容】成我们自己的域名。
二:设置Gethub Pages - Custom domain
第一步:我们需要首先解析我们自己的域名
这个由于我自己买的是阿里云的域名,所以我就以阿里云为例,登陆自己的阿里云后台控制台,找到域名列表页面。

下一步我们需要对域名进行解析,如上图所示:
需要注意:只有域名状态是正常状态的时候才能保证能正常设置到后续步骤,要是你的域名是刚刚买的,需要稍微等等,我记得中间还有一个注册局还是什么的需要点时间做个备案之类的东西,等一段时间就好。
到解析设置页面我们选择 - 【添加记录】

-
记录类型这里我们选择A
-
主机记录这里我们选择@ 【它代表我们的域名能直接通过https://xx.com的方式访问,不需要中间的www】
-
记录值这里填写的是Github的IP,我们怎样获取呢?其实也简单,你在终端ping一下geniuszhangxu.github.io这部分就能看到,当然我不是让你直接ping我的,在上面设置完Pages之后的链接那里找你自己的ping,但你不想ping也没关系,这个IP都是公开的,也不会改变,就是下面的四个:
185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153
有些其他云的是能直接英文逗号隔开添加好几个的,但阿里云的似乎不行,只能分别添加,所以这里我门就需要创建四个A类型的记录。
这里之所以添加四个,我看网上的同学说是可以避免出现哪个IP下访问有问题,导致网页打不开的情况出现。这里我们就这样填写,没必要纠结原因。
- 还需要添加一个CNAME类型的记录
记录类型选择CNAME,主机记录选择www, 记录值这里我刚开始填写的是自己的域名【如aa.com】,但是我在下一步强制使用Https的时候出现了问题,这里经过我测试还是得填写类似【geniuszhangxu.github.io】这部分的内容。这样下一步才不会有问题。
这样处理完之后整体的解析内容如下:

第二步: 设置Custom Domain
处理完上面的内容之后,我们就可以在Github设置Custom Domain啦~填写你的域名,点击保存,比如你的域名是xx.com,那你填写xx.com即可,填写完之后保存。

等你Save之后,下一步Github就会开始DNS的检测:

下面的状态就表示成功啦~

第三步:强制使用Https
上一步完成之后,其实你的Custom Domain就已经设置好了,当然你不介意使用http的方式,而不是使用https的方式访问的话,这一步你可以选择忽略。
当我们设置完Custom Domain之后,接下来就会进入TLS证书的请求过程,之后完成了这部分才能点击 Enforce HTTPS,不然这个按钮是灰色的。还记不记得我前面提过的CNAME,主机记录选择www后填写记录值的问题,就是开始我填写完之后发现一直卡在请求证书这里,一直是: TLS certificate is being provisioned. This may take up to 15 minutes to complete.

可当我等了好几个15之后发现还是不行,所以才改了CNAME类型的记录值,改完之后发现很快就成功了,不用1个15~~
到此就结束了,现在你就可以愉快的通过https的方式访问库里面的默认index.html的内容了。
总结:通过上面的设置,我们的官网内容或者隐私内容的html文件就可以完美的通过链接访问啦,要是你在Github的仓库中不仅仅有你的index.html,还有别的html或者xml还是json等文件,都可以通过https://xx.com/a.html或者是https://xx.com/a.json等的方式去访问其他的内容,这样扩展之后,是不是可以写个网站😂。这就的问前端或者运维的同学了。好啦~我们需要注意的点上面都已经写清楚,有啥问题可以通过主页联系我~