Netlify是否支持为React SPA设置维护/预发布(施工中)模式?
在Netlify上无需修改React代码实现站点施工中/维护模式
Netlify确实支持无需修改React代码就能开启施工中/维护模式的方案,以下是几种原生实现方式:
方法1:使用重定向文件+自定义施工页面
- 在项目根目录(或React构建后的
build目录)创建两个文件:under-construction.html:编写你的施工中提示页面(包含文字、样式等)_redirects:添加重定向规则,内容如下:/* /under-construction.html 200
- 将这两个文件提交到Git仓库,触发Netlify重新部署。部署完成后,所有访问请求都会被导向施工页面。
- 取消维护模式时,只需删除
_redirects中的这条规则,重新部署即可。
方法2:基于环境变量的可控维护模式
这种方式可以让你在Netlify后台快速开关维护模式,无需修改代码或重新提交文件:
- 先按方法1创建
under-construction.html和_redirects文件,不过_redirects内容改为带条件的规则:/* /under-construction.html 200! Conditions:MAINTENANCE_MODE=* - 进入Netlify站点后台,到Site settings > Environment variables,添加一个名为
MAINTENANCE_MODE的变量,值设为true。 - 重新部署站点,此时维护模式生效;需要关闭时,直接删除这个环境变量或把值改为
false,再重新部署即可。
方法3:针对特定部署环境配置
如果只需要在生产环境开启维护模式,可以用Netlify的部署上下文配置:
- 在项目根目录创建
netlify.toml文件,添加以下内容:[context.production] [[context.production.redirects]] from = "/*" to = "/under-construction.html" status = 200 force = true - 提交文件并部署,生产环境会自动切换到施工页面;其他环境(如预览部署)不受影响。
- 取消时,注释掉
netlify.toml中的这段配置,重新部署即可。
所有方案都无需改动React应用的核心代码,仅通过Netlify的配置文件或后台设置就能实现临时维护模式。
内容的提问来源于stack exchange,提问作者Mike KS
相关产品推荐
相关产品推荐

