We have a gravity form on our website where the person completing the form is supposed to attach additional documents. They are receiving an error messages that they cannot submit attachments. This happens to about 80% of users, and has happened spontaneously after having worked fine for several years. Is this a Gravity forms issue or the hosting platform (Go Daddy?). Thank you.
If the form page is being cached, it could be a caching issue, since it does not happen for all users. The best course of action is to exclude the pages with forms from all caching/optimization solutions in use on the site.
If the error is a -200 HTTP response, it would indicate that the server is blocking the upload for some reason. So, you will need to reach your host support to investigate the issue.
Security plugins can also ask the server to trigger that blocking of the request.
Thanks for this informative reply!
I’m having the same problem and have done tons of troubleshooting with cached pages, excluding pages with forms from caching, worked my host rocket.net. When the person tries to upload they get a 403 error. It started randomly mid/end of December and I just can’t get a hold on why it’s continuing to randomly have issues. glassmaninc.com
Your page is still cached by Cloudflare:
The error you’re getting indicates the upload request included an expired nonce. WordPress nonces are valid for up to 24 hours.
To avoid issues like these, we do recommend excluding pages that include forms from caching and optimization features. See the following page of the documentation for more details: FAQ on Cache and Script Optimizer Issues - Gravity Forms Documentation
Would installing the Gravity Forms Cache Buster add-on fix this?
Hi Jessica and Katie,
I am experiencing the same issue (403 errors on file uploads or AJAX requests) on two different Gravity Forms that allow file uploads.
In both cases, I confirmed the issue was caused by the WordPress Nonce (“number used once”) used to validate the request. Because the nonce could not be validated, a 403 error was triggered. As previously mentioned, this is typically caused by caching—when a page is cached, the security nonce becomes outdated and fails.
You can learn more about WordPress nonces here. By default, a nonce is valid for 12 to 24 hours.
How I Solved This:
I activated the “Gravity Wiz Cache Buster” plugin. This allows me to cache my pages while keeping the embedded Gravity Forms dynamic. So far, it is working perfectly.
Note: To ensure the plugin works correctly:
-
Do not dequeue any Gravity Forms files (JS or CSS) from pages that contain a gravity form.
-
Exclude Gravity Forms CSS files from “Remove Unused CSS” (RUCSS) settings in your performance plugin (e.g., WP Rocket, Perfmatters).
Alternative Solutions:
-
Exclude affected pages from caching: Refer to your caching plugin or CDN documentation to bypass specific URLs.
-
Lower Cache Lifespan: Set your caching plugin to refresh the cache of your affected gravity forms page every 8–10 hours to stay within the nonce’s validity window. If your caching plugin does not have a setting to do this, contact the plugin developer (or use AI) to obtain the proper PHP code snippet.
Useful Links:
- Cache Busting with Gravity Forms
- WP Rocket: Resolve 403 Forbidden Error
- WPForms: Troubleshooting 403 Errors
If these steps don’t work, I suggest contacting your host and asking them to examine the error logs to whitelist or unblock any affected directives for your site.
I hope this helps!
