Skip to content

Custom html in nodebb to prevent cache

Unsolved Configure
18 2 5.2k 1
  • wrote on last edited by Panda
    #1

    I wish to stop browser cash to force nodebb to rerun custom css everytime page is refreshed
    (as it picks different random image as background)
    Theres place for custom css / js
    But where to put this html

    Cache-Control: no-cache
    

    I tried it in a few places but it didnt work

    On further googling do I need all these lines?

    <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
    <meta http-equiv="Pragma" content="no-cache">
    <meta http-equiv="Expires" content="0">
    

    I tried that in Custom Header, didnt work either

  • wrote on last edited by
    #2

    Strange update with incognito browser it doesnt cache, and shows different background every time.
    But oddly the forum text is different color and looks blurred with icognito

  • I wish to stop browser cash to force nodebb to rerun custom css everytime page is refreshed
    (as it picks different random image as background)
    Theres place for custom css / js
    But where to put this html

    Cache-Control: no-cache
    

    I tried it in a few places but it didnt work

    On further googling do I need all these lines?

    <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
    <meta http-equiv="Pragma" content="no-cache">
    <meta http-equiv="Expires" content="0">
    

    I tried that in Custom Header, didnt work either

    wrote on last edited by
    #3

    @Panda said in Custom html in nodebb to prevent cache:

    On further googling do I need all these lines?

    Yes, they are all necessary.

  • Strange update with incognito browser it doesnt cache, and shows different background every time.
    But oddly the forum text is different color and looks blurred with icognito

    wrote on last edited by
    #4

    @Panda said in Custom html in nodebb to prevent cache:

    Strange update with incognito browser it doesnt cache, and shows different background every time.
    But oddly the forum text is different color and looks blurred with icognito

    Incognito is exactly that. It doesn’t cache anything, which is what it’s supposed to do. Are you using a desktop or chrome for this? Also, is your webserver nginx ?

  • @Panda said in Custom html in nodebb to prevent cache:

    Strange update with incognito browser it doesnt cache, and shows different background every time.
    But oddly the forum text is different color and looks blurred with icognito

    Incognito is exactly that. It doesn’t cache anything, which is what it’s supposed to do. Are you using a desktop or chrome for this? Also, is your webserver nginx ?

    wrote on last edited by Panda
    #5

    @phenomlab so nodebb hosted so Im not using any nginx etc
    Can you tell me if aignite.nodebb.com looks very different for you on mobile chrome, in incognito browser?
    In my incognito, some text barely readable!

    Also still caching on normal mobile browser despite all those lines in custom header

  • @phenomlab so nodebb hosted so Im not using any nginx etc
    Can you tell me if aignite.nodebb.com looks very different for you on mobile chrome, in incognito browser?
    In my incognito, some text barely readable!

    Also still caching on normal mobile browser despite all those lines in custom header

    wrote on last edited by
    #6

    @Panda if it’s hosted NodeBB then I’m 99% sure that they will be using nginx. Nginx itself will cache static assets - css being one of them, so what you are experiencing is normal behavior, and the cache-control headers you have defined with have virtually zero effect when they are already set by nginx itself.

    On a desktop, you can force the browser to clear that cache for that specific site by pressing f12 to open the developers console, then left click and hold on the reload button in the browser

    After and one second you’ll see three options. You want the third, which is “Clear cache and reload”

    I know you use your phone to do most things, but I can tell you now that it’s almost impossible to develop in this way and it needs to be done via a PC or laptop.

  • @phenomlab so nodebb hosted so Im not using any nginx etc
    Can you tell me if aignite.nodebb.com looks very different for you on mobile chrome, in incognito browser?
    In my incognito, some text barely readable!

    Also still caching on normal mobile browser despite all those lines in custom header

    wrote on last edited by
    #7

    @Panda said in Custom html in nodebb to prevent cache:

    Can you tell me if aignite.nodebb.com looks very different for you on mobile chrome, in incognito browser?

    What I can tell you is that the white overlay with the lime green text doesn’t work. It’s virtually illegible and not pleasing to the eye at all.

  • @Panda said in Custom html in nodebb to prevent cache:

    Can you tell me if aignite.nodebb.com looks very different for you on mobile chrome, in incognito browser?

    What I can tell you is that the white overlay with the lime green text doesn’t work. It’s virtually illegible and not pleasing to the eye at all.

    wrote on last edited by Panda
    #8

    @phenomlab yes, but the point about browser cache on mobile, I want the users to get a different background pic each time.

    So I know I an manually clear cache, but the users shouldnt need to know about that.

  • @phenomlab yes, but the point about browser cache on mobile, I want the users to get a different background pic each time.

    So I know I an manually clear cache, but the users shouldnt need to know about that.

    wrote on last edited by phenomlab
    #9

    @Panda how are you issuing the image? If you use JS to do this, you won’t need to worry about browser cache. It’s a little unclear as to what you currently have in place.

  • @Panda how are you issuing the image? If you use JS to do this, you won’t need to worry about browser cache. It’s a little unclear as to what you currently have in place.

    wrote on last edited by
    #10

    @phenomlab
    Just css with a random image url
    You have login, take a look?

  • @phenomlab
    Just css with a random image url
    You have login, take a look?

    wrote on last edited by
    #11

    @Panda I’m not in front of a PC presently, but can look tomorrow.

  • @Panda I’m not in front of a PC presently, but can look tomorrow.

    wrote on last edited by
    #12

    @phenomlab the forum looking so different on incognito and standard browser is so weird.
    (This is on Android device)
    Its like the Neon theme is much more Neon on the incognito, and the text is hard to read!

  • @phenomlab the forum looking so different on incognito and standard browser is so weird.
    (This is on Android device)
    Its like the Neon theme is much more Neon on the incognito, and the text is hard to read!

    wrote on last edited by
    #13

    @Panda said in Custom html in nodebb to prevent cache:

    Its like the Neon theme is much more Neon on the incognito, and the text is hard to read!

    Incognito mode will always reflect the current state of affairs as it will not cache anything. If it looks bad in this session, this is how others will see it also.

  • wrote on last edited by
    #14

    @Panda What I see on checking the site is this

    image.png

    It looks psychedelic and the colours do not work at all.

  • @Panda What I see on checking the site is this

    image.png

    It looks psychedelic and the colours do not work at all.

    wrote on last edited by Panda
    #15

    @phenomlab yes, but skins / themes arent supposed to cache.
    So my main issue here is why was it looking different?
    I’ve changed skin now, but still want to get round this caching, as still have problem on normal broswer that I dont get new background image every time browser bar refreshed

  • @phenomlab yes, but skins / themes arent supposed to cache.
    So my main issue here is why was it looking different?
    I’ve changed skin now, but still want to get round this caching, as still have problem on normal broswer that I dont get new background image every time browser bar refreshed

    wrote on last edited by
    #16

    @Panda said in Custom html in nodebb to prevent cache:

    yes, but skins / themes arent supposed to cache.

    They will cache by default - by NGINX, and not anything you choose to put in the headers. The code you specified there would apply to the entire site, which defeats the purpose of using a cache to speed up delivery of assets that the browser already has. Even without the case in Incognito mode, the experience is awful because most of the text is unreadable.

    The point you made about fonts looking blurry is because of the presence of text-shadow as a CSS element. This technique is used to made text stand out by using a drop shadow of another colour. This now clashes with the changes you have made and makes the text look blurry.

  • wrote on last edited by
    #17

    So if I cant prevent cache, how do I achieve different background each time?

  • So if I cant prevent cache, how do I achieve different background each time?

    wrote on last edited by
    #18

    @Panda You’ll need to do that with js. With some quick CSS changes, it looks like this

    d619844f-fbfe-4cf1-a283-6b7364f6bf18-image.png

    The colour choice is still really hard on the eye, but at least you can now read the text


Related Topics
  • Nodebb to Xenforo

    Solved Configure xenforo nodebb
    3
    0 Votes
    3 Posts
    1k Views
    phenomlab
    @cagatay as @downpw stated, there isn’t a native tool that will do this for you. You’d need to either develop your own or ask the nodebb team to assist which will be a paid exercise.
  • What’s going on with NodeBB?

    Performance nodebb script die
    20
    8 Votes
    20 Posts
    6k Views
    phenomlab
    @cagatay The most reliable way to upgrade Node.js on Ubuntu depends on how you originally installed it. Method 1: Using NVM (Recommended) If you already use Node Version Manager (NVM), upgrading is simple. NVM allows you to keep both versions and switch between them if needed. Install Node 22: nvm install 22 Switch to Node 22: nvm use 22 Set it as your default: nvm alias default 22 Verify the change: node -v Method 2: Using NodeSource (PPA) If you installed Node.js via apt using the NodeSource repository, you need to update the repository script to point to the new version. Remove the old NodeSource list (optional but cleaner): sudo rm /etc/apt/sources.list.d/nodesource.list Download and run the NodeSource setup script for Node 22: curl -fsSL [https://deb.nodesource.com/setup_22.x](https://deb.nodesource.com/setup_22.x) | sudo -E bash - Install/Upgrade Node.js: sudo apt-get install -y nodejs Verify the installation: node -v Method 3: Using the ‘n’ Package If you have npm installed, you can use the n interactive manager. Clear the npm cache: sudo npm cache clean -f Install the ‘n’ helper: sudo npm install -g n Install Node 22: sudo n 22 Update your shell: hash -r Troubleshooting Permission Denied: If you see permission errors using Method 2 or 3, ensure you are using sudo. Path Issues: If node -v still shows version 20 after upgrading via NVM, restart your terminal or run source ~/.bashrc. Conflicts: Avoid mixing these methods. If you switch from apt to nvm, it is best to sudo apt remove nodejs first to avoid path conflicts.
  • SEO and Nodebb

    Performance nodebb seo
    2
    2 Votes
    2 Posts
    2k Views
    phenomlab
    @Panda It’s the best it’s ever been to be honest. I’ve used a myriad of systems in the past - most notably, WordPress, and then Flarum (which for SEO, was absolutely dire - they never even had SEO out of the box, and relied on a third party extension to do it), and NodeBB easily fares the best - see below example https://www.google.com/search?q=site%3Asudonix.org&oq=site%3Asudonix.org&aqs=chrome..69i57j69i60j69i58j69i60l2.9039j0j3&sourceid=chrome&ie=UTF-8#ip=1 However, this was not without significant effort on my part once I’d migrated from COM to ORG - see below posts https://community.nodebb.org/topic/17286/google-crawl-error-after-site-migration/17?_=1688461250365 And also https://support.google.com/webmasters/thread/221027803?hl=en&msgid=221464164 It was painful to say the least - as it turns out, there was an issue in NodeBB core that prevented spiders from getting to content, which as far as I understand, is now fixed. SEO in itself is a dark art - a black box that nobody really fully understands, and it’s essentially going to boil down to one thing - “content”. Google’s algorithm for indexing has also changed dramatically over the years. They only now crawl content that has value, so if it believes that your site has nothing to offer, it will simply skip it.
  • NodeBB v3 Quick reply

    Solved Configure quick reply button
    4
    1
    2 Votes
    4 Posts
    2k Views
    crazycells
    here is the link: https://app.transifex.com/nodebb/nodebb/translate/#tr
  • 36 Votes
    55 Posts
    31k Views
    phenomlab
    @DownPW I see why. The code relies on the existence of [component="topic/quickreply/container"] However, this by definition means that the below has to be enabled [image: aeef638f-4188-489d-a9f2-f3a26dbca9d8-image.png] It will then work [image: 7fb38631-e0f3-46ef-b652-00929d927b13-image.png] For some unknown reason, this is hidden in Harmony, and only shows if you select it. In v2, it seems that the <section> is deleted altogether in Persona if “Quick Reply” is disabled, meaning it won’t fire as it can’t locate that specific component. The downside is that you might not want the quick reply function, but I think it’s a PITA to scroll up to the top of the post just to reply, so I have it on
  • Post Style View

    Solved Customisation post style sudonix nodebb
    67
    2
    18 Votes
    67 Posts
    36k Views
    DownPW
    @cagatay Just add margin-left on the element like @phenomlab said to you : topic [component="post/parent"] { margin-left: 10px; } [image: aa08c62b-4223-4cba-8c0f-c73d50474c0d-image.png] Maybe @phenomlab have a better way
  • [NodeBB] Import custom Font

    Solved Customisation custom fonts nodebb css
    12
    3 Votes
    12 Posts
    5k Views
    phenomlab
    @cagatay you’ll need to define this in the body tag (or another element if you want greater or more granular targets) - for example body { font-family: "Poppins"; font-size: 16px; } Essentially, you use the font-size CSS directive.
  • Iframely (Nodebb)

    Solved Configure
    40
    4 Votes
    40 Posts
    17k Views
    phenomlab
    @DownPW This is now resolved. The issue was an incorrect URL specified in the Nodebb plugin. I’ve corrected this, and now it works as intended.