Reservation form not working with cloudflare enabled

Hello, I am having really hard time finding what’s going on with this specific issue on one of my WordPress sites.

https://kastiel.sosprepc.sk

There is a reservation form (when you pick check out/in dates) and after submitting it from my personal IP, there is a generic error telling me something happened and it was not able to proceed with my request. However when I try the same through the VPN or my mobile data program, form is working just fine even with CF enabled.

I turned off every single option in CF that I could, added my IP into firewall to allow/bypass anything that could stay in my way, without success. Only after I disabled the CF for the entire domain through the CF dashboard, the form started working for me (from my IP). I am using CFs DNS.

Any idea what could be wrong? This is first time I am seeing anything like this. I am not using any caching or security plugins on my WP installation, only the necessary one for the theme I am using.

PHP ver: 7.4
DB ver: MariaDB 10.3
WP ver: 5.8.2

That sounds like a localized issue. I suggest you go through the same process but with your browser’s Dev Tools window open (F12 in Chrome). Keep an eye on the Network and Console tabs (Console, usually) for any errors.

While in the Network tab, click on any resource in your website and look at the headers in the right margin. You should see some indications it’s using Cloudflare.

I just checked with network tab and console tabs opened, however there were no issues. Console is completely empty without any warning or errors.

In the network tab I can clearly see CF headers, but there is also no problem there that I could notice. Every request has status code 200 including the one with the form’s payload.

I tried with both data connection and my personal one, both have the same result in network tab and console as far as I can tell, but only data connection successfully submits the form into the DB for some reason.

Also there isn’t anything in the CF firewall either about my IP or anything being blocked. There just have to be some relation between my IP and CF (as it’s working fine with CF paused). No idea how can I debug this further to pinpoint the issue, I am open to any suggestions at this point.

Hello, from my side, it seems to work fine,

I would suggest:

  1. Fix:

https://kastiel.sosprepc.sk/en/ is the only 301.

  1. Apparently you do not have Rocket Loader activated, leave it like that, in my case I had problems with forms.

  2. Disabling Cache via Cache-Control:

cache-control: no-store in (https://kastiel.sosprepc.sk/rezervacia/) , some one show just max-age=0 or in all pages no-store.

  1. Purge Cache in Cloudflare and your browser.

I hope it helps you.

Hello, sorry, I was currently testing something and I disabled proxy status in CF DNS settings (currently it’s grey cloud) so CF only resolves DNS. I will re-enable it just for the sake of this support thread / testing, but I couldn’t figure it out after 2 days of testing different scenarios and domains with this configuration.

Even then though, it seems like it’s not working only while it’s sent from my IP as VPN / data connection works fine. I have already many rules bypassing and allowing my IP to do basically anything but it still won’t send me that POST to the server when sending the form.

Also it’s important to note that by sending the form, I mean continuing all the way through the checkout and choosing the “payment method”, then hitting send. (I changed language back to english to make it easier, sorry about that).

Is it the /pokladna/ request? It’s showing a 200. Is it showing in your server’s log?

Dude, for me work very nice.

Your booking has been submitted successfully. We just sent you a confirmation email to [email protected] You can manage your bookings on your account dashboard.

Please Delete.

I advise you to check the cache, English did not work.

I think the js files, involved in the forms should be no-store

https://kastiel.sosprepc.sk/wp-content/plugins/eagle-booking//assets/js/utils.js

This is the cloudflare cache:

cache-control

public, max-age=31536000

Install the plugin: Dr. FLare

1 Like

For my personal IP, it’s not showing if it’s going through CF (orange cloud on the DNS), it just pops error after submitting and never reach the server as I checked the access log.

This is how it looks like for me when I am on my personal internet connection trying to send it with my IP:



The POST request never reach the server when I checked the logs. So I suppose it gets stucked somewhere between me and CF or CF just blocks it for some reason.

This is page rule I have set up for the /pokladna/ URL in CF:

I am kind of relieved that it’s at least working for anyone else besides me, but it bugs me out why it’s happening. From the info I have by Dr.FLARE it seems everything was OK and it wasn’t cached by the looks of it.

What did you do here to disable Cloudflare?

In CF DNS settings I marked the domain as “grey cloud”, so the CF only resolves DNS back to my server directly.

I noticed that earlier, your page rule did not include the / at the end. That’s not going to match the URL of your reservation form which ends with a slash. Silly, yes, but I just tried it out on my test site to see for myself.

You might also try Development Mode from the Overview tab.

True, just fixed the slash + tried it in dev mode, but it’s still not working. I will probably need to contact CF support directly so they can check their logs and why it’s getting halted for my IP or just disable CF for this specific website sadly. If I am having this issue there is a chance there are more people which will get the same and I don’t want to risk that.

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.