球球在催我水一篇家里搭建网站的文章,我最近也试了一下。具体的思路如下:
- 在家里的服务器上部署好环境,并搭建网站。
- 有公网IP的话做好端口映射,或者是内网穿透。
- 做好DNS动态解析,绑定好域名。
- 在DNS服务商设置加速域名,并选择刚才的域名进行回源。顺利取消端口号。
国内的CDN商一定要备案域名!!!没有的话建议做显/隐性转发!
部署环境
部署环境我想了几种方案,因为家里软路由上装的是esxi,所以想过搞一个liunx的虚拟机,然后再装宝塔面板。后来为了简单,还是在群晖上装一个宝塔面板的docker版本。
- 所以首先是下载映像。我选择的是pch18/baota这个版本,详细的文档都是中文写的,非常的友好。
- 下载完成之后,作者是建议使用host模式去进行启动。我的话因为前段时间学会了那个独立IP的玩意,所以在命令行下输入
docker create --net=emby --name=baota --ip=192.168.2.80 pch18/baota
新建了一个容器。容器的名称是baota
,ip地址是192.168.2.80
。
- 容器建立好之后就要配置参数了,点开之后先把文件夹映射出来。
- 接下来是映射端口,其中443、80是网页的端口。8888是宝塔面板的默认登陆端口,888是数据库的登陆端口。其中443、80本地端口与容器端口不能设置成一样的,这应该是个bug,因为我这个ip是独立的,不会存在什么端口占用的情况。我随便填了一个,过会测试的时候,其实依旧是使用的80、443。
- 设置完成之后就可以启动了,默认的账号是
username
,默认的密码是paassword
。然后在浏览器输入192.168.2.80:8888
进行登陆。
- 我在这一步碰壁了,明明是默认的账号密码,确还是登陆不上去。只好在docker的终端机里输入
bt
然后进行密码重置的工作。 - 登陆进宝塔面板后发现默认的建站环境都已经安装完成。
搭建网站
- 在这里我就只简单的搭建一个网站演示一下。我在这里填入了3个地址,
test.xhhdd.cc
是用来DDNS解析的域名,blog.xhhdd.cc
是用来做加速域名,192.168.2.80
是因为要本地访问。
- 我上传了typecho的程序上去,并输入
192.168.2.80
进入初始化界面。然后成功设置好网页。
设置动态解析与加速域名
端口映射
把刚才的端口映射出去,在路由器上做了设置。那么现在通过外网IP+端口
就能够进行访问。
不过我不会内网穿透,因为家里是外网IP,外网穿透可能要稍微多几个步骤。
动态解析
动态解析我就不累述了,之前写过。因为我是阿里云的域名,所以也是在docker下安装一个容器来实现。
那么作好动态解析之后,就可以通过
test.xhhdd.cc+端口
来进行访问了。加速域名
这里我是用的是腾讯云的CDN,它回源的时候可以填写域名+端口
的形式,不过很重要的一点就是,它一定要备案域名,那么有些朋友可能就是因为域名备案不是很方便,才在家里部署的,这个时候那我就比较推荐做一个url转发,显性的比较简单,隐形的就要考虑一下支不支持,ssl会不会掉等问题。
- 首先打开腾讯云内容分发网络的界面,并点击添加域名。
加速域名
填写一个不冲突的即可,我的已经填过了,所以有提示。源站地址
这里填写我们刚才做好动态解析与端口映射后能访问的地址。回源host
填写加速域名即可,其他的不做改变。
- 配置好之后去域名管理商那里添加一条指向腾讯云的CNAME记录。
- 大功告成,现在输入
blog.xhhdd.cc
即可顺利打开网站。
总结
如果是没有备案域名,除了做显性或者隐性转发之外,还可以试一下能不能挂上国外的CDN商。可惜我不会用...
这一篇水的比较粗糙,关于CDN的缓存规则,ssl证书之类的我还没有去研究。主要也是暂时没有太多把网站搬回家的需求,那就先留个底,记录一下大概的流程。
2 条评论
肥子哥yyds!