Support » Plugin: Booking Calendar » LiteSpeed problem

  • Resolved Bike Gremlin

    (@bikegremlin)


    Hello,

    First I’d like to say: great job on the plugin. Has all the needed functionalities (even in the free version), including bilingual use, and it works great.

    However, I’ve noticed some problems when using Litespeed cache plugin on a Litespeed server. Plugin link:
    https://wordpress.org/plugins/litespeed-cache/

    Digression:
    I understand there probably is nothing wrong with your plugin, but with the way Litespeed cache plugin works (with your plugin). Still, I’m sure more and more people are using Litespeed and it is something to be addressed.

    I would also understand if you just directed me to Litespeed (which could also, understandably, direct me to the plugin author and so on 🙂 ).

    Still, I’d greatly appreciate if you could point me in the right direction on how to solve this. Did search Google and this support forum, but couldn’t find an answer.

    The problem:

    When the Litespeed cache plugin is installed and caching is enabled, I get the following error when trying to create a booking from the front end (as a visitor would):

    “Error: Request do not pass security check!…”

    This happens both when logged in as admin and when using non-logged in session (“incognito” mode with F12 – network – disable cache using Chrome) – as long as a booking is scheduled from the front end (web page for booking).

    What I’ve tried:

    Enabling all the Litespeed cache optimizations I regularly use with the website doesn’t seem to cause problems (at least not in and of itself). As long as the caching option is disabled, it all works. Also, if all the optimizations are disabled, it still works as long as caching is disabled and doesn’t work if caching is enabled.

    In other words: as soon as caching is re-enabled, the error re-appears. All the other options seem to make no effect (either helping, nor worsening).

    Purging cache manually does solve the problem temporarily, for a few hours at least.

    Another thing I’ve noticed:
    I need to set the page where the calendar is shown to be excluded from caching, otherwise it doesn’t load the calendar properly (again, using Litespeed cache plugin).
    This, however, doesn’t help avoid the error message.

    Clearing the cache does help for a day, or so, but then the error re-appears and keeps showing until I disable caching, or clear the cache.

    As I said, tried loading the page with browser caching disabled (f12, networking, disable cache with Chrome).

    Info (if it helps solve the prolem):

    Litespeed cahce plugin does have a menu for adding links and queries to be excluded from caching.
    with “wildcards” (part of the link/query entered is enough to disable all the links/queries containing that “text”).

    Thank you in advance for your time
    Relja

    The page I need help with: [log in to see the link]

Viewing 10 replies - 1 through 10 (of 10 total)
  • Plugin Author wpdevelop

    (@wpdevelop)

    Hello.
    Unfortunately, Booking Calendar does not support cache plugins. Sorry.

    If you are using some cache plugin, please deactivate it or add the exception to the page with booking form for do not cache this page(s) (If such Cache plugin have option to have exception of not caving specific pages).

    Such error appear only if such page was cached. So you need to be sure that the page with booking form is not cached anymore.

    Kind Regards.

    I have disabled the caching of the booking pages. It does help load the pages properly and work for a while.

    However, after a few hours, up to a day, bookings stop working, until the caching is purged, or disabled. Pages still load properly (having disabled their caching), but trying to schedule a booking reports an error. Until caching is completely disabled (for the entire website), or completely purged.

    Apart from excluding the link of the page, are there any Booking plugin specific queries I could try disabling and see if it helps?

    Your Booking plugin is great and it would be a shame not to “make it” work with Litespeed cache, since it is getting quite popular and for Litespeed servers it is by far the “fastest” caching plugin of all I’ve tried and tested.

    If you can think of anything specific I could ask the Litespeed cache plugin developers to check, please let me know. Or something I could/should try, or google to find a way solve this problem.

    Plugin Author wpdevelop

    (@wpdevelop)

    I can only suggest that something was configured incorrectly relative to excluding page with booking form.

    Because if you make purged cache to start work the page with booking form, it’s means that this page is cached. Please contact support of cache plugin relative excluding page from caching.

    Once again, Booking Calendar does not support cache plugins, so that’s why it’s required to exclude pages with booking form to not cache it.
    Kind Regards.

    Yes, that makes sense. What confuses me:
    Placing pages in the exclude caching list does help with loading them properly.
    If it didn’t, I would have been certain that the cache exclude option isn’t working properly (this way I’m not certain, though it still could be).

    So, apologies if it’s a stupid question, I’m not an expert:
    Is it possible that caching a certain query string could prevent booking submit from functioning?

    There is option for disabling queries from caching, so I could add that one to the list.

    Nothing else comes to mind. Trying to figure out how the Booking plugin works so I can at least know what to google, or ask Litespeed cache plugin developers.

    Not sure if I’ve explained well what I mean, please let me know if there’s any info I could provide to help you point me in the right direction. If not, thank you anyway for your time, I do appreciate it.

    Plugin Author wpdevelop

    (@wpdevelop)

    I think there was cached entire page.
    It’s required to not cache page at all.
    In general that error appear, because in hidden secret nonce field in the booking form the value was not updated. It’s updated by WordPress 2 times per day.
    Kind Regards.

    Double checked Litespeed instructions for confirming if cache is working. Based on what I could find, the appointments page appears to be not cached.

    Cached page (“prices”) headers print screen.

    Non-cached pages (“appointments”) headers print screen.

    Do you have an idea what I’m missing? :/

    Plugin Author wpdevelop

    (@wpdevelop)

    No, I do not sure about this.
    As I was wrote above I suggest that the page or part of that page with Booking Calendar is cached. Plugin does not support this. Sorry.
    Kind Regards.

    Thanks.

    I’ll let you know if I get to the bottom of this, since I’m sure many people are using Litespeed cache.

    What came to mind was Cloudflare – only after having done the screenshots did it occur – Cloudflare caches stuff too.

    So, just in case, I added a rule in Cloudflare to bypass the cache for the appointments pages. If that doesn’t help, I’ll give it some more thought in the following days before giving up on the plugin.

    Seems to be working (for) now. 🙂

    Was banging my head with LiteSpeed and had completely forgotten about Cloudflare.
    Excluding LiteSpeed caching for the page was not enough.
    Had to make a Cloudflare Page Rule to bypass caching for the page on Cloudflare as well.
    That seems to have solved the problem.

    In detail, in case anyone else runs into a similar problem and can’t figure it out:
    https://io.bikegremlin.com/9525/booking-calendar-caching/

    Sorry to have bothered you – didn’t think of it at first.

    Plugin Author wpdevelop

    (@wpdevelop)

    Great to know that this issue have been resolved.
    Kind Regards.

Viewing 10 replies - 1 through 10 (of 10 total)
  • The topic ‘LiteSpeed problem’ is closed to new replies.