Open Chathu07 opened 4 years ago
Hi First, pagespeed module do nothing with ico,svg nor php files, so you don´t need these lines:
pagespeed LoadFromFileRuleMatch allow .ico$ps_dollar;
pagespeed LoadFromFileRuleMatch allow .svg$ps_dollar;
pagespeed LoadFromFileRuleMatch allow .php$ps_dollar;
In fact, I think you need to include these file extensions in the disallow section.
My score for your site is 81 mobile 95 desktop, if your site still the same (drcrhub).
I see you have issues with render blocking with css and js files.
For css files you may take a look to the filters you have set:
If you enable prioritize_critical_css, I think you don´t need any of the inline filters nor any of the move filters
For the js files, I don´t know why the defer_javascript is not working, but you need to set the js script w/ defer or async attributes
For the filter inline_google_font_css you need, like css or js inline filters, the size with
pagespeed GoogleFontCssInlineMaxBytes bytes;
And you have TTFB issues too, so you need to optimize the nginx server for better TTFB, for example tunning the ssl config ( read https://haydenjames.io/nginx-tuning-tips-tls-ssl-https-ttfb-latency/)
Take account that the Ligthhouse test for mobile emulates a very slow connection, with a fixed 150ms RTT and 1.6Mbps
And maybe using cloudflare you have trouble with optimized resources and the clodflare cache. In fact i can´t test you site cause it.
Dear @Lofesa thank you for your reply. Problem is that I use Contact Form 7 with ReCaptcha v3. After I disabled it again site perform well. I have tested https://foodsreborn.com/ site. But still I have image lazy loading issue.
When I debug I get following response. Please look at its DelayImages and Lazyload Images both automatically disabled.
`
| Filters: | ah Add Head | ij Canonicalize Javascript library URLs | cw Collapse Whitespace | cc Combine Css | ch Combine Heads | jc Combine Javascript | gp Convert Gif to Png | jp Convert Jpeg to Progressive | jw Convert Jpeg To Webp | mc Convert Meta Tags | pj Convert Png to Jpeg | ws When converting images to WebP, prefer lossless conversions | db Debug | dd Dedup Inlined Images | dj Defer Javascript | di Delay Images | ea Elide Attributes | ec Cache Extend Css | ei Cache Extend Images | es Cache Extend Scripts | fc Fallback Rewrite Css | if Flatten CSS Imports | hw Flushes html | ci Inline Css | gf Inline Google Font CSS | ii Inline Images | il Inline @import to Link | idp Insert DNS Prefetch | id Insert Image Dimensions | js Jpeg Subsampling | ll Lazyload Images | tu Left Trim Urls | ls Local Storage Cache | ga Make Google Analytics Async | gaa Convert showads.js use to async adsbygoogle.js | cj Move Css Above Scripts | cm Move Css To Head | jo Outline Javascript | pr Prioritize Critical Css | rj Recompress Jpeg | rp Recompress Png | rw Recompress Webp | rc Remove Comments | ri Resize Images | rm Resize Mobile Images | ir Resize to Rendered Image Dimensions | rx Responsive Images | cf Rewrite Css | rd Rewrite Domains | jm Rewrite External Javascript | jj Rewrite Inline Javascript | cu Rewrite Style Attributes With Url | is Sprite Images | cp Strip Image Color Profiles | md Strip Image Meta Data | | Options: | AllowVaryOn (avo) Auto | AvoidRenamingIntrospectiveJavascript (aris) True | CssInlineMaxBytes (ci) 28000 | EnableCachePurge (euci) True | EnableRewriting (e) 1 | FetchWithGzip (afg) True | FileCacheCleanIntervalMs (afcci) 7776000000 | FileCacheInodeLimit (afcl) 429497 | FileCacheSizeKb (afc) 2097152 | GoogleFontCssInlineMaxBytes (gfci) 20000 | HttpCacheCompressionLevel (hccl) 9 | ImageMaxRewritesAtOnce (im) 1000 | ImplicitCacheTtlMs (ict) 3600000 | InPlaceSMaxAgeSec (ipsm) 10 | IproMaxConcurrentRecordings (imcr) 100 | JsOutlineMinBytes (jo) 3000 | LazyloadImagesAfterOnload (llio) True | LoadFromFileCacheTtlMs (lfct) 2592000000 | LowercaseHtmlNames (lh) True | LRUCacheByteLimit (alcb) 64384 | LRUCacheKbPerProcess (alcp) 16192 | MaxCacheableContentLength (rcl) 2048000 | MaxCombinedCssBytes (xcc) -1 | MaxCombinedJsBytes (xcj) -1 | MinImageSizeLowResolutionBytes (nislr) 10 | RespectVary (rv) True | RespectXForwardedProto (rxfp) True | RewriteDeadlinePerFlushMs (rdm) 2000 | RewriteLevel (l) Pass Through | Statistics (ase) True | StatisticsLogging (asle) True | StatisticsLoggingIntervalMs (asli) 1800000 | SupportNoScriptEnabled (snse) False | UseExperimentalJsMinifier (uejsm) True | XHeaderValue (xhv) Powered By ngx_pagespeed | | #NumFlushes 0 | #EndDocument after 96543us | #Total Parse duration 2909us | #Total Render duration 561103us | #Total Idle duration 93634us | No critical images detected. | The following filters were disabled for this request: | DelayImages | Lazyload Images | -->
`
These filters are disabled for "this" request. "this" is the wrod. For lazyload/delay images pagespeed need some info that take some time to collect. The info como back to pagespeed server via the beacons. ¿What positio have the images related to the viewport? ¿What distance from the star of page maybe considered as a "frontier" to show or not images? These questions need info, these info is collected by the javascript injected in the page when the beacon is working and reported to the server via POST request. Take a look at the server log files, you must see some log request type POST whit ngx_pagespeed_beacon in the url
I use a responsive theme and use a LEMP stack and use the WordPress platform.
When I test the site performance using the pagespeed insights, I can achieve 81% score for the desktop site but mobile site score less than 30%.
Below you can find my configuration file. My I know which filters improve the mobile site performance?