/**
* Built-in Cloudflare-style origin error page.
* Keep in sync with Go DefaultOriginErrorPageHTML in
* pkg/render/openresty/origin_error_page.go
*/
export const DEFAULT_ORIGIN_ERROR_PAGE_HTML = `
{{status}} | 源站暂时无法提供服务
{{status}}
源站暂时无法提供服务
网关已拦截源站错误响应。请稍后重试;若问题持续,请联系站点管理员。
{{host}}
`;
/** Max HTML size in bytes (aligned with backend 256 KiB). */
export const ORIGIN_ERROR_PAGE_HTML_MAX_BYTES = 256 * 1024;
export function effectiveOriginErrorPageHTML(html: string): string {
return html.trim() === '' ? DEFAULT_ORIGIN_ERROR_PAGE_HTML : html;
}
export function previewOriginErrorPageHTML(
html: string,
status = '502',
host = 'example.com',
): string {
return effectiveOriginErrorPageHTML(html)
.replaceAll('{{status}}', status)
.replaceAll('{{host}}', host);
}