Jump to content

The Old Man

Clients
  • Posts

    3,958
  • Joined

  • Last visited

  • Days Won

    11

 Content Type 

Downloads

Release Notes

IPS4 Guides

IPS4 Developer Documentation

Invision Community Blog

Development Blog

Deprecation Tracker

Providers Directory

Forums

Events

Store

Gallery

Everything posted by The Old Man

  1. Is it just me or has performance (loading speed) of this site been troublesome this week in the UK? I have a fibre broadband connection, and all week I have been experiencing error messages about no response, infinity loading spinners, images not loading properly in lightbox with only 5% of the image showing unless I double click on them to open in a new tab etc. I'm talking different devices and browsers and various times of day and night. e.g. 11 seconds waiting for the page to appear just now clicking on this topic's title
  2. Hi Nathan, Have I missed the awesome sale offer? Thanks! 🤗
  3. Hi @marklcfc I'm still researching this along with getting Cloudflare to cache non-default theme pages for guests seperately based on the ips theme cookie (the Cache Key settings are missing the documented Cookie field preventing this). Thanks to the new Caching Rules , it looks like you can overide the default via the CF settings, but ONLY to increase the time beyond what IPS sets by default (the 900 secs/15mins) for 2hrs up to a year. You used to be able to and probably still can select a shorter period in the default CF settings. I think as you have mentioned you want to cache it for less 900s so guests always see the latest topics, but I think you'd be better off getting it to revalidate before still serving the 900 sec cached page. That way the guest should always see any new content within a few seconds. To do that, you need to change the IPS cookie header, do it via your server, or via Cloudflare. I personally can only see a need for the Pro plan to get access to on the fly image resizing and conversion, but its based on your needs. I sell about 2-3 themes a year, so I can't afford it!
  4. Ah, thanks for the confirmation, yes having no rules at all will cache the usual assets only.
  5. I'm glad we found it, it's been driving me nuts too. I had to clear the CF cache after removing that rule from the second of four sites that had it and it's working as intended. These extra caching rules that CF now provide free accounts are the dealbreaker here. So looking at your cache time now, 900s/15 mins, and it's not revalidating each time it loads for a guest to check if the page has changed, but it is doing what IPS have set it to. For now though, what you are seeing is what @Day_ posted, BYPASS replaced by DYNAMIC, so perhaps it's not fully configured if it was enabled when I took this screen shot: As previously posted by another chap in this thread... As I understand that, and this quasi-outdated from the documentation: assuming you still have Jim's Cache Rule enabled and still set to Eligible for Cache, you need to make sure Respect Origin is enabled further down or you have selected an alternative caching options, as it is falling back to the old Page Rules for what to do; and I think because your Page Rule is probably empty and you don't have one with the Cache Everything set, it's using the default action not to cache html pages, just static assets like CSS, JS, images, fonts, etc only if they are stored on your server and not remotely like on a Google CDN. I'd check the Caching Rule is set correctly but I think you could try the other options to get CF to revalidate. If you were setting it manually, adding the oddly mis-titled 'No-Cache' option would do that.
  6. You may have to create a new constants file via the AdminCP if it doesn't take. (Via the save in the Data Storage tab). I've just checked and found it again in one of my sites that was working but caching it for 3600 seconds, so that was indeed the reason why the other site wasn't doing it at all, as it was set to zero, this one was at 3600: It's definitely overriding the time setting for Cache Control and Expires that we were expecting to see, having set CFlare to respect the origin's settings.
  7. Yes, see if that makes any improvement for you.
  8. Thanks for checking! If you delete that line, clear your cache, I think you'll see a difference in the headers and CF will start caching correctly. 🤔 Forgot to add, I'm using Redis and Opcache too. Forgot to add, I'm using Redis and Opcache too.
  9. Hi @marklcfc When you get a min, please could you take a quick look in your constants.php file, if you have one? I found a line I was unaware of in one of mine that was causing issues, which I think was added when I replaced the constants file after I deactivated Redis page caching (ye old IPS version) prior to upgrading to the latest/current version: \define( 'CACHE_PAGE_TIMEOUT', 0 ); On this particular site, the guest caching was always in BYPASS mode and showing different to my other sites, I couldnt figure out why: cache-control no-cache, no-store, must-revalidate, max-age=0, s-maxage=0 expires 0 vary Cookie,Accept-Encoding After removing it, and clearing all cookies for the site from my browser (I couldn't log out and I had a complaint someone couldn't check out of my Commerce store), I am now seeing the new rule: cache-control no-cache="Set-Cookie", max-age=900, public, s-maxage=900, stale-while-revalidate, stale-if-error HIT Expires Wed, 16 Nov 2022 18:11:31 GMT My other sites cache differently, but not like this: Site P - Guest HITS (has IPS Gallery and Pages) cache-control no-cache="Set-Cookie", max-age=900, public, s-maxage=900, stale-while-revalidate, stale-if-error expires Mon, 14 Nov 2022 20:44:32 GMT vary Cookie,Accept-Encoding Site M - Guest HITS (has all IPS except Blogs and Commerce, and in a subfolder part of HTML/PHP site) cache-control no-cache="Set-Cookie", max-age=900, public, s-maxage=900, stale-while-revalidate, stale-if-error expires Mon, 14 Nov 2022 20:54:06 GMT vary Cookie,Accept-Encoding Site S - Guest HITS (has IPS Gallery only in a subfolder of Wordpress) cache-control no-cache="Set-Cookie", max-age=3600, public, s-maxage=3600, stale-while-revalidate, stale-if-error expires Mon, 14 Nov 2022 21:28:13 GMT vary Cookie,Accept-Encoding Site I - Guest BYPASS only (has full IPS suite & the rogue constants rule) cache-control no-cache, no-store, must-revalidate, max-age=0, s-maxage=0 expires 0 vary Cookie,Accept-Encoding now after deleting that rule: HIT cache-control no-cache="Set-Cookie", max-age=900, public, s-maxage=900, stale-while-revalidate, stale-if-error expires Wed, 16 Nov 2022 18:11:31 GMT vary Cookie,Accept-Encoding For my sites in subfolders, I did remember to adjust the Caching Rule paths accordingly with the folder name. Many thanks.
  10. Hi @Jim M I was looking at that Expires: 0 header. Is it something to do with the session cookie that IPS sets? When I close the browser leaving marklfc's site open, and then reopen it so that it reloads the previously open tabs (my current preference), the session cookie is preserved and still present (Chrome bug lists this as a feature and not a bug btw), and the header includes expires: 0. Firefox Devtools cookie view: ips4_IPSSessionFront:"j326nroc689ghbtk3ak9rnpg73" Created:"Mon, 14 Nov 2022 14:37:53 GMT" Domain:"www.foxestalk.co.uk" Expires / Max-Age:"Session" HostOnly:true HttpOnly:true Last Accessed:"Mon, 14 Nov 2022 14:37:53 GMT" Path:"/" SameSite:"None" Secure:true Size:46 @marklcfc Just for info I just looked at your test page and after a couple of refreshes it showed a cache hit for me, but your forum still doesn't. Edit: If I turn off the option to resume open tabs, the session is correctly not preserved as you would expect.
  11. I imagine that with it not being in the same domain, you'd have to specify a full path from root to that directory that is represented by the subdomain. It might just work for add-on domains though, I'm guessing here.
  12. @marklcfcI took the liberty of visiting your community earlier (nice by content the way!), and I instantly felt it was quite responsive and not sluggish at all. The pages were loading what seemed to me almost instantly, but I wasn't seeing any ads. I did a couple of quick tests with GTMetrix and it kind of told a different perspective: Cloudflare isn't caching your pages yet, which is probably as you have it currently configured and so expect. You could probably do a bit of general optimisation to speed things up. You have almost a 100 requests. You have a fairly off-putting/intrusive cookie modal (sorry!), but I noticed it's also terribly designed in terms of performance. It loads it's own separate Google Fonts which is just bad practice, as it effectively adds to your page loading times and bloat. Ideally it should use the fonts already on your page. The IPS provided cookie banner is still not fully compatible with GDPR (it only provides accept) so I also use a third party one. You may want to check out CookieYes. The ads which obviously are there for a reason, are adding a lot of cruft to the page. Maybe you could review, tweak or limit them. If you look at the waterfall in the report, you can see where it starts to take a hit from all the cruft. Your cookie consent isn't actually working properly, your site is tracking visitors regardless via Google as soon as the page is loaded. If you look at the page source, it loads Google Analytics in the first few lines. It should not contain that tracking code until the analytics cookies have been opted into, then it either adds them to the page via Ajax or via a page refresh. That's also having a small performance impact as it is. GTmetrix-report-www.foxestalk.co.uk-20221110T080316-m018lkYd-1stload.pdf Second load: GTmetrix-report-www.foxestalk.co.uk-20221110T081555-6MJUSKbh.pdf
  13. I think there's a lot more to it and room for improvement. On my communities, all hosted on the same VPS, yet I was seeing different caching headers on my IPS sites, despite all having the exact same configuration. I turned off Expires and enabled Etags last night and my IPS page headers changed, showing that there is indeed some influence dependant upon my Apache configuration. Also, IPS could utilise Accept-Language in the Vary response to cache the different languages separately if they wanted to. They could if not already also use Cache-Control: Private, No-Store for any personalised pages, that is apparently now the best practice way to do it.
  14. No worries, I think to be honest, I'd rather see a proper dedicated section added to the support docs, as opposed to having to find a post or two with the relevant settings to use, no offence to I think it was Jim who shared his methodology. Just thinking aloud... I think adding support for the Cloudflare API perhaps as a Community Enhancement could be useful ... for providing a way to only clear html pages and not all content including images, videos, the kitchen sink etc, plus... for fine grain control when specific content has been updated like a new post, topic or article. It would be nice to be able to see some stats in the AdminCP Dashboard the ability to add a list of pages to never cache, one per line, supporting wildcards (3rd party plugins could hook into or extend) and to be able to have a 'preload' option to effectively prime the cache after clearing, say for all main index pages and maybe top 20 content items, or maybe use the sitemap to help prime the cache. To add blocklist IP addresses, bots etc. I like idea of CF Workers being there as a backup, also should headers do get mangled by Apache, a plugin inadvertently sends whitespace in the header or CF decides to do its own thing and cache stuff it shouldn't. Edge cases I know.
  15. Here's another caveat be mindful if you have Always Online enabled in Cloudflare:
  16. I'm not trying to antagonise you, I recognise you spend a lot of time helping and advising around the forums, but you've suggested a sledge hammer to crack a walnut, on someone else's server who at the end of the day you/we don't know anything about. I'm suggesting that there are probably more cautious or better ways to go about this by enabling or deactivating specific features and functionality. You have to remember that other people are reading this as well. With IPS being a paid for solution (and not cheap!) which is officially supported, there should be an official guidance page in the help section, preferably before they started to deactivate features! We shouldn't be stressing over this now, just because IPS want people to migrate to their preferred eco system and they have to some extent left us twisting in the wind. Our CDN does caching doesn't mean a lot to those not using Cloudfront. In theory perhaps. IPS has never always set the correct headers and cookie values for all areas of the site, look at the pigs ear that was made of S3 storage. I seem to recall that cookies were included with a response, the Cloudflare CDN wouldn't cache a response. That's why you needed the bypass on cookie option, which was fine if you were not on the free plan. You're including headers from Cloudfront and comparing the end result with Cloudflare, which isn't the same type of CDN at all.
  17. You don't want to do that. You'll essentially be losing all the performance and security benefits of Cloudflare and also giving away your origin's IP address, akin to pausing the site on Cloudflare or disabling the site. The problem is there is no specific Cloudflare API support in IPS, no documentation guidance on correct replacement of local guest page caching, and we're being told the software will set the correct headers. It's never done that properly unless this has changed. Even then, Cloudflare may choose not to honour it and cache it anyway (under some circumstances), which is why utilising CF Workers to manage caching gives greater peace of mind, Is there any reassurance and testing been done to date so far that CF won't cache Moderator CP pages, PM's, Commerce baskets, account details etc. The problem has always been that you can't just set CF to cache everything (so that it does HTML which it normally doesn't, unless you set it via a Page Rule) combined with 'Bypass on cookie' enabled, because that feature was always been available only for Pro accounts upwards. I'm going to experiment with the suggestions so far myself, Opentype mentioned some positive results. CF seems to be separating it's caching rules and increasing them which is great as the free accounts were always limited to just 3.
  18. Surprised to see /contact/ isn't in the robots.txt! 😬
  19. Hi, If I add a URL field to a Pages database entry form (its a link directory), the link shows and works okay, but is there a way to count the clicks from this field (preferably without a hook)? Thanks!
  20. Oh I have many, many issues for you to help resolve, Jim! 🥴
  21. Well that was odd, yes I had 5 or 6 showing as translated, no idea why. Removed the text and it fixed it.
  22. Hi, Poss a bug, I've noticed a couple of time that Calendar app wasn't renamed to Events. Happened on half of my communities. Thanks!
  23. Hi @bryanharley I think what Charles was referring to was the Time Cutoff setting in the Search section of AdminCP. What you could do is set it for a period like 365 days, then when you go the Dashboard home you will see it rebuilding. Once it has finished, you could look at the size of your search index table and compare it to what it was taking up before when unlimited. Then perhaps increase it by another year or 6 months, depending upon your community needs, your patience (!) and the the resulting table sizes. Gauging the increase in multiplies won't be 100% accurate but should at least give you a guesstimate of the economies of scale. Obviously reducing the amount of searchable content is akin to archiving it in terms of the older data then being unsearchable, but just thinking a little out of the box and assuming we're talking publicly visible content it will still be searchable via Google. So your members, visitors and potential visitors won't lose out completely and you could add a Google Custom Search facility to your Community to supplement the built in internal search.
×
×
  • Create New...