生成静态文件时,有报错,不成功。原因是:环回请求被宝塔免费版防火墙拦截造成超时!
测试复现:当把系统防火墙关闭后,Simply Static生成静态可以成功。当再次开启系统防火墙后,Simply Static生成静态又失败了,主要表现就是站点健康有以下二个关键问题。

解决方案:
1、第一步:修正 wp-config.php 配置(关键)在wp-config.php的最后面添加以下代码。
// ========== 修复WordPress环回请求/REST API(适配宝塔防火墙+Nginx) ==========
// 替换为你的站点域名(带https)
define('WP_HOME', 'https://it.hsx.ltd');
define('WP_SITEURL', 'https://it.hsx.ltd');
// 允许本地请求,禁用外部请求拦截
define('WP_HTTP_BLOCK_EXTERNAL', false);
define('WP_ACCESSIBLE_HOSTS', 'it.hsx.ltd,127.0.0.1,localhost');
// 核心修复:让环回请求使用域名+本地IP解析,保留HTTPS协议
add_filter('pre_http_request', function($response, $args, $url) {
// 仅处理本站的REST API/环回请求
$site_domain = parse_url(WP_HOME, PHP_URL_HOST);
if (strpos($url, $site_domain) !== false) {
// 替换域名解析为127.0.0.1,保留HTTPS和路径(关键:不换协议)
$local_url = str_replace('https://' . $site_domain, 'https://127.0.0.1', $url);
$args['sslverify'] = false; // 禁用本地SSL验证
$args['headers']['Host'] = $site_domain; // 强制携带域名Host头,让Nginx匹配正确站点
// 发起本地请求
$response = wp_remote_request($local_url, $args);
}
return $response;
}, 10, 3);
// ========== 配置结束 ==========
多站点适配:每个 WordPress 站点仅需修改WP_HOME和WP_SITEURL的域名,其余代码完全复用。
2、第二步:补充 Nginx 配置(让 127.0.0.1 访问匹配对应站点)
这一步是解决127.0.0.1访问 404 的核心,且多站点可复用同一逻辑:
登录宝塔面板 → 网站 → 对应站点(mtbug.hsx.ltd)→ 设置 → 配置文件;
在 server_name mtbug.hsx.ltd; 这一行后,添加127.0.0.1(保留原域名,新增本地 IP),修改后如下:
server_name mtbug.hsx.ltd 127.0.0.1;

然后,再次点 站点健康 检测,就消失了以上2个关键问题。
再次执行 Simply Static生成静态 ,就可以正常了。
有的情况下,仅修改第一步,就可以实现成功了。有的时候可能还不行,需要我们继续修改第二步。
本解决方案修改,不受主题模板影响,不受插件影响。
有时有的服务器环境是可以的,有的服务器环境不行,反正检测方法就是以上。发现有问题,再在wp-config.php的最后面添加以上代码。
【2026-01-26结束】