My Performance Grade is still Poor

How can WPMU help with this FAILED ISSUES in my Performance Report according to https://tools.pingdom.com
- Parallelize downloads across hostnames
- Combine external JavaScript
- Leverage browser caching
- Serve static content from cookieless domain
Thankx

  • Adam Czajczyk

    Hello Esm

    I hope you're well today and thank you for your question!

    Let me "mix up" the order of the issues a bit, I hope you don't mind that :slight_smile:

    Parallelize downloads across hostnames

    I must say that I haven't seen that for quite a long time in any tests. If I'm not mistaken, GTMetrix has even deprecated it. The problem here lays in a HTTP protocol. The HTTP/1.1 protocol limits the number of concurrent connections the browser can make to a host "in one go". This results in resources of the site being "queued", thus loading "one after another", therefore taking longer to load.

    I was surprised a bit seeing this on test results for your site because the site is using HTTPS and that in most cases means also HTTP/2 nowadays, which is a solution to the issue - it automatically does that (downloads resources in parallel), unless your host doesn't support that.

    Therefore, in an attempt to solve this, I'd first suggest taking to your host, asking about HTTP/2 support. Majority of hosts should support that but in this case it looks like either your host doesn't or there's something wrong with the configuration. If the host confirms that it's supported, let me know and we'll investigate it further.

    That should actually also solve the other issue ("serve static content from cookieless domains") but I'll get to it in a moment.

    If it turns out that HTTP/2 is not supported by the host, apart from actually moving the site to other host, it's worth to try implementing a CDN on site. Even a free CloudFlare plan should help here (as well as for the "static content from cookieless domains" issue).

    Serve static content from cookieless domain

    I'd say that if the issue above is solved, this should also be no longer an issue. However, in some - though rare cases - additional steps might be necessary. This is also a case of site configuration + server configuration. Basically, it means that static resources (such as e.g. image files) are served from additional domain (that can also be a sub-domain of your main domain) that simply doesn't put any cookies (WordPress itself does that) into user browser.

    Implementing it requires creating either a separate domain or - which is the most common scenario - creating a sub-domain of the domain of your site. On such a sub-domain you don't set any WP install or any other script but instead just copy your static files to it and then modify WP settings to use that sub-domain for them.

    The simple solution to serve static content from cookieless domain in WordPress is as follows:

    - create a subdomain (e.g. static.carrozz......dri.it)
    - set a CNAME (in DNS) for that subdomain to point to the /wp-content folder of your site (so it should be a CNAME for carozz...dri.it/wp-content)
    - add two lines to the "wp-config.php" file of the site:

    define('WP_CONTENT_URL', 'https://your-subdomain-here');
    define('COOKIE_DOMAIN', 'your-domain-here');

    replacing your-subdomain-here and your-domain-here with correct values, of course.

    Since your site works over SSL connection you would also need that new subdomain to be covered by SSL in order to avoid "mixed content" issues.

    However, I don't think setting that all up will be necessary if only the first issue will be solved.

    Leverage browser caching

    This is where our Hummingbird plugin should help. Take a look here please:
    https://premium.wpmudev.org/project/wp-hummingbird/

    Once you install it, please go to the "Hummingbird -> Caching" page -> "Browser Caching" section and make sure that browser caching is enabled there for all the listed file types and with suggested settings.

    Combine external JavaScript

    This is another task for Hummingbird. Once you got it installed, you will find an "Asset Optimization" tool there which, enabled, should deal with it. I'd start with default settings (just enable it, let it scan your site and configure everything automatically). If it either causes some issues on the site or it does not but still doesn't handle that aspect, let me know (make sure that support access to the site is open) and we'll try to tweak the settings more.

    Kind regards,
    Adam

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.