问题:
国内访问Netlify有些卡,因此希望能够部署到别的平台上加速访问。
解决方案:
方案1:
将项目拷贝到阿里云服务器中;
使用hugo进行编译:hugo server
这里一个坑:1313拒绝的原因是没有bind,应该是:
hugo server --bind "0.0.0.0" -b "http://ip:1313"
从而能够从阿里云访问;
缺点是尽管网络请求变快了,但内容加载速度很慢,导致打开时间还是很长。
方案2:
继续使用hugo生成public中的静态网页;、
上传到github后
再使用vercel等进行加速。
缺点:vercel也慢。
最终方案:
step1: 利用之前的工具(比如Wowchemy)完成netlify上的网页生成,即首先在netlify上得到目标网页。
step2: 将github上的代码下到本机,使用hugo编译,得到/public/文件夹, 即得到静态网页。
注: 1. hugo server编译无法得到public文件夹,需要使用hugo再编译一次;
step3: 修改public文件夹中的一些链接,例如双语网站中 中文/ English 默认链接到netlify的域名中,要将它们改为自己的域名。例如:
<li class="nav-item dropdown i18n-dropdown">
<a href="#" class="nav-link " data-toggle="dropdown"
aria-haspopup="true" aria-label="Languages">
<i class="fas fa-globe mr-1" aria-hidden="true"></i></a>
<div class="dropdown-menu">
<div class="dropdown-item dropdown-item-active">
<span>English</span>
</div>
<a class="dropdown-item" href="https://mydomian.top/zh/" data-target="/zh/">
<span>中文 (简体)</span>
</a>
</div>
</li>
step4: 将public文件夹托管到腾讯云/ 阿里云上。对于阿里云,注意事项包括:
a. 必须添加自定义的已经备案的域名,否则无法访问(因为按规定没有已备案域名的网站无法访问).
b. 若使用https,必须有SSL证书;
c. 自定义域名时也要在域名管理中添加相应的解析。
c. 使用自己电脑进行测试时应注意浏览器缓存、域名解析等问题。
======================================================================================================
原载于 我的博客
如有错误,可联系 rxnlos@126.com
======================================================================================================