Custom Post Type fails to save as Draft/Pending Could not get a valid response
Support › MB Custom Post Type › Custom Post Type fails to save as Draft/Pending Could not get a valid response
- This topic has 0 replies, 1 voice, and was last updated 11 hours, 26 minutes ago by
Jason.
-
AuthorPosts
-
May 7, 2026 at 4:15 AM #49954
Jason
Participantmarkdown**Title:** Draft save fails with ERR_CONNECTION_CLOSED — server returns 200 but browser receives 0 bytes
Hi all,
I'm hitting a stubborn issue saving drafts on a Meta Box-registered CPT (
featured-property) and would appreciate any insight. I've done extensive diagnostic work and the symptoms don't match the usual causes.**The error**
Block editor shows: "Updating failed. Could not get a valid response from the server."
Happens on Save Draft and Save Pending. Publishing works fine.
**What's strange**
Browser DevTools shows the failed request as:
POST /wp-json/wp/v2/featured-property/{id}?_locale=user
Status: (failed) net::ERR_CONNECTION_CLOSED
0 bytes received, ~800ms durationBut the server's Apache access log shows the same POST returning 200 with a 3KB JSON body at the same timestamp:
174.x.x.x - - [06/May/2026:18:37:32 +0000] "POST /wp-json/wp/v2/featured-property/27534?_locale=user HTTP/1.0" 200 3029So PHP is processing the save and returning a successful response, but the browser never receives any bytes — the connection is closed mid-flight.
The browser stack trace shows the save going through Meta Box's validation.js (
/wp-content/plugins/meta-box/js/validation/validation.js?ver=5.12.0) wrappingeditor.savePost.**What I've ruled out**
- Author capability bug — CPT has Author support enabled
- Plugin conflict — reproduces with all other plugins deactivated
- User capability — admin user
- WAF / security plugin — none installed (RunCloud-managed Apache, no ModSecurity)
- Browser cache / extensions — reproduces in incognito
- CORS / origin — fixed an http/https URL mismatch, OPTIONS preflights now succeed
- show_in_rest — confirmed on (CPT has block editor enabled)
- Validation rules — fields only have basic "required" rules, no regex/custom rules
- Console — no JS errors when the failure occurs**Environment**
- Meta Box AIO version: Version 3.7.0
- WordPress: WordPress 6.9.4
- PHP: 8.4.20 (FPM)
- Apache: 2.4.66
- PHP memory limit: 256M
- PHP max_input_vars: 1000
- PHP time limit: 30s
- Server: RunCloud-managed (Apache-only, no Nginx)**CPT setup**
Registered via MB Custom Post Types. Supports: Title, Editor, Thumbnail, Author. Uses Post capability type.
**Active Meta Box extensions**
MB Custom Post Type, MB Builder, MB Conditional Logic, MB Group, MB Tabs, MB REST API, MB Frontend Submission, MB Views, MB Rank Math, MB Relationships, MB User Profile, MB Settings Page, MB User Meta, MB Term Meta, MB Comment Meta, MB Custom Table, MB Revision, MB Admin Columns, MB Blocks, MB Show Hide, MB Include Exclude, MB Geolocation, MB Columns, MB Tooltip, MB Template, MB Yoast SEO Integration, MB Divi Integrator, MB Beaver Builder Integration, MB Elementor Integration, MB FacetWP Integration, MB ACF Migration, MB Toolset Migration, MB Text Limiter
**The core mystery**
Server logs show 200 with body. Browser gets 0 bytes. Apache error log is silent during the failed saves. Why would the response not reach the browser when the server thinks it sent one successfully — and why does this happen specifically on draft saves through validation.js's wrapper around
editor.savePost?Any pointers appreciated. Happy to share staging access or additional logs.
Thanks!
-
AuthorPosts
- You must be logged in to reply to this topic.