gatsby-source-wordpress插件下载远程文件耗时过长求助
针对你遇到的gatsby-source-wordpress同步MediaItem卡住的问题,试试这些解决方案:
排查目标媒体文件
卡在10/11说明第11个媒体文件大概率存在异常。登录本地WordPress后台找到该MediaItem:- 检查文件是否损坏、存储路径是否正确、是否存在读写权限限制
- 尝试重新上传该文件,或暂时删除它后重新执行构建,验证是否能完成同步
清理缓存并调整硬缓存配置
硬缓存可能保留了损坏的文件缓存,导致重复卡住:- 执行
gatsby clean清除Gatsby本地缓存 - 将配置里的
hardCacheMediaFiles改为false,避免强制复用旧缓存,修改后重新构建
- 执行
优化插件配置参数
当前部分配置参数可能不合理,调整后测试:perPage从100改回30,单次请求过多数据易导致超时或服务压力过载requestConcurrency可调整为2-3,适当提高并发但不要超出本地WordPress的承载能力timeout设为300000(5分钟)即可,过长的超时设置会掩盖实际请求失败问题
修改后的配置示例:
{ resolve: `gatsby-source-wordpress`, options: { url: `http://localhost:10019/graphql`, develop: { hardCacheMediaFiles: false, }, schema:{ timeout: 300000, perPage: 30, requestConcurrency: 2, }, }, },检查本地WordPress服务状态
- 确认wp-graphql插件运行正常,无报错
- 查看WordPress错误日志(通常在
wp-content/debug.log),排查是否存在媒体文件相关的请求错误 - 直接在浏览器打开该媒体文件的URL,测试能否正常下载,排除网络或文件本身的问题
内容的提问来源于stack exchange,提问作者Manpreet Singh
相关产品推荐
相关产品推荐

