This is an old revision of the document!
Cache is Purging Often Despite TTL Settings
Symptom and Behavior
Cache is getting purged quite often, inconsistent with the TTL settings.
Cause
Some actions may unintentionally trigger a purge.
Possible reason
- Settings→Purge Do you enabled
All pages
item and you frequently do post? - Settings→Advanced Do you manually add any hooks to
Purge All Hooks
? - Do you have any plugins enable/disable automatically when page load?
Diagnosis
Enable Debug Log
Enable the Debug Log, chosing Admin IP only
, add your IP under Admin IPs, and set Debug Level to Advanced
.
Purge and Rebuild a Page's Cache
Purge all cache, access any page twice, make sure the cache header is showing hit
, then do something that is suspected to trigger the purge.
In this example, this action would be edit a WooCommerce product's inventory, since you have noticed that it appears to purge irrelevant pages as well.
Check the Debug Log
Now check the debug log:
06/24/18 20:55:53.809 [1.2.3.4:31844 1 mIO] ------GET HTTP/1.1 (HTTPS) / 06/24/18 20:55:53.809 [1.2.3.4:31844 1 mIO] Query String: 06/24/18 20:55:53.809 [1.2.3.4:31844 1 mIO] User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36 06/24/18 20:55:53.809 [1.2.3.4:31844 1 mIO] Accept Encoding: gzip, deflate, br 06/24/18 20:55:53.809 [1.2.3.4:31844 1 mIO] Cookie _lscache_vary: admin_bar:1;logged-in:1;role:99 06/24/18 20:55:53.809 [1.2.3.4:31844 1 mIO] X-LSCACHE: true 06/24/18 20:55:54.107 [1.2.3.4:31844 1 mIO] Media init 06/24/18 20:55:54.114 [1.2.3.4:31844 1 mIO] CDN init 06/24/18 20:55:54.115 [1.2.3.4:31844 1 mIO] Task init 06/24/18 20:55:54.119 [1.2.3.4:31844 1 mIO] [Router] LSCWP_CTRL bypassed empty 06/24/18 20:55:54.120 [1.2.3.4:31844 1 mIO] GUI init 06/24/18 20:55:54.192 [1.2.3.4:31844 1 mIO] [Ctrl] X Cache_control init on 06/24/18 20:55:54.409 [1.2.3.4:31844 1 mIO] [Core] Footer hook called 06/24/18 20:55:54.410 [1.2.3.4:31844 1 mIO] ESI: [block ID] admin-bar [wrapper] adminbar [Control] private,no-vary 06/24/18 20:55:54.410 [1.2.3.4:31844 1 mIO] [Core] Footer check passed 06/24/18 20:55:54.410 [1.2.3.4:31844 1 mIO] [Router] get_uid: 1 => LSC_Router::get_uid()@175 => LSC_Router::get_role()@194 => LSC_Config->in_exclude_cache_roles()@556 => LSC_Control->_setting_cacheable()@694 06/24/18 20:55:54.410 [1.2.3.4:31844 1 mIO] [Router] get_role: administrator 06/24/18 20:55:54.410 [1.2.3.4:31844 1 mIO] [Cfg] role in vary_group [group] 99 06/24/18 20:55:54.410 [1.2.3.4:31844 1 mIO] [Vary] show_admin_bar_front: true 06/24/18 20:55:54.410 [1.2.3.4:31844 1 mIO] [Vary] admin bar : true 06/24/18 20:55:54.411 [1.2.3.4:31844 1 mIO] [Vary] no custimzed vary 06/24/18 20:55:54.411 [1.2.3.4:31844 1 mIO] X-LiteSpeed-Cache-Control: public,max-age=604800,esi=on 06/24/18 20:55:54.411 [1.2.3.4:31844 1 mIO] X-LiteSpeed-Tag: 87f1_URL.6666cd76f96956469e7be39d750cc7d9,87f1_F,87f1_Po.24,87f1_PGS,87f1_ 06/24/18 20:55:54.411 [1.2.3.4:31844 1 mIO] [Core] Footer check passed 06/24/18 20:55:54.411 [1.2.3.4:31844 1 mIO] [Media] finalize 06/24/18 20:55:54.411 [1.2.3.4:31844 1 mIO] GUI bypassed by no counter 06/24/18 20:55:54.411 [1.2.3.4:31844 1 mIO] [Optm] start 06/24/18 20:55:54.411 [1.2.3.4:31844 1 mIO] CDN bypass 06/24/18 20:55:54.411 [1.2.3.4:31844 1 mIO] End response --------------------------------------------------------------------------------
06/24/18 20:55:54.709 [1.2.3.4:31844 1 NEi] ------GET HTTP/1.1 (HTTPS) / 06/24/18 20:55:54.709 [1.2.3.4:31844 1 NEi] Query String: lsesi=lswcp&_control=private,no-vary&esi=YToyOntzOjM6InJlZiI7czoxOiIvIjtzOjg6ImJsb2NrX2lkIjtzOjk6ImFkbWluLWJhciI7fQ%3D%3D 06/24/18 20:55:54.709 [1.2.3.4:31844 1 NEi] User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36 06/24/18 20:55:54.709 [1.2.3.4:31844 1 NEi] Accept Encoding: gzip, deflate, br 06/24/18 20:55:54.709 [1.2.3.4:31844 1 NEi] Cookie _lscache_vary: admin_bar:1;logged-in:1;role:99 06/24/18 20:55:54.709 [1.2.3.4:31844 1 NEi] X-LSCACHE: true 06/24/18 20:55:55.011 [1.2.3.4:31844 1 NEi] Media init 06/24/18 20:55:55.020 [1.2.3.4:31844 1 NEi] CDN init 06/24/18 20:55:55.023 [1.2.3.4:31844 1 NEi] Task init 06/24/18 20:55:55.029 [1.2.3.4:31844 1 NEi] [Router] LSCWP_CTRL bypassed empty 06/24/18 20:55:55.029 [1.2.3.4:31844 1 NEi] GUI init 06/24/18 20:55:55.105 [1.2.3.4:31844 1 NEi] [Ctrl] X Cache_control init on 06/24/18 20:55:55.108 [1.2.3.4:31844 1 NEi] ------- ESI ------- admin-bar ------- 06/24/18 20:55:55.109 [1.2.3.4:31844 1 NEi] [Ctrl] X Cache_control -> private 06/24/18 20:55:55.109 [1.2.3.4:31844 1 NEi] [Ctrl] X Cache_control -> no-vary => LSC_Control::set_no_vary()@108 => LSC_ESI::load_esi_block()@273 => /home/domain/public_html/wp-includes/template-loader.php@7 => /home/domain/public_html/wp-blog-header.php@74 06/24/18 20:55:55.115 [1.2.3.4:31844 1 NEi] ESI: adminbar ref: / 06/24/18 20:55:55.115 [1.2.3.4:31844 1 NEi] [Core] CHK html bypass: miss footer const 06/24/18 20:55:55.116 [1.2.3.4:31844 1 NEi] [Router] get_uid: 1 => LSC_Router::get_uid()@175 => LSC_Router::get_role()@194 => LSC_Config->in_exclude_cache_roles()@556 => LSC_Control->_setting_cacheable()@694 06/24/18 20:55:55.116 [1.2.3.4:31844 1 NEi] [Router] get_role: administrator 06/24/18 20:55:55.116 [1.2.3.4:31844 1 NEi] [Cfg] role in vary_group [group] 99 06/24/18 20:55:55.116 [1.2.3.4:31844 1 NEi] [Vary] show_admin_bar_front: true 06/24/18 20:55:55.116 [1.2.3.4:31844 1 NEi] [Vary] admin bar : true 06/24/18 20:55:55.116 [1.2.3.4:31844 1 NEi] [Vary] no custimzed vary 06/24/18 20:55:55.116 [1.2.3.4:31844 1 NEi] X-LiteSpeed-Cache-Control: private,no-vary,max-age=1800 06/24/18 20:55:55.117 [1.2.3.4:31844 1 NEi] X-LiteSpeed-Tag: 87f1_tag_priv,public:87f1_ESI,public:87f1_ESI.admin-bar,public:87f1_ 06/24/18 20:55:55.117 [1.2.3.4:31844 1 NEi] [Core] CHK html bypass: miss footer const 06/24/18 20:55:55.117 [1.2.3.4:31844 1 NEi] [Media] bypass: Not frontend HTML type 06/24/18 20:55:55.117 [1.2.3.4:31844 1 NEi] GUI bypassed by no counter 06/24/18 20:55:55.117 [1.2.3.4:31844 1 NEi] [Optm] bypass: Not frontend HTML type 06/24/18 20:55:55.117 [1.2.3.4:31844 1 NEi] CDN bypass 06/24/18 20:55:55.117 [1.2.3.4:31844 1 NEi] End response --------------------------------------------------------------------------------
06/24/18 20:56:02.207 [1.2.3.4:31844 1 Mj6] ------POST HTTP/1.1 (HTTPS) /wp-admin/admin-ajax.php 06/24/18 20:56:02.207 [1.2.3.4:31844 1 Mj6] Query String: 06/24/18 20:56:02.207 [1.2.3.4:31844 1 Mj6] User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36 06/24/18 20:56:02.207 [1.2.3.4:31844 1 Mj6] Accept Encoding: gzip, deflate, br 06/24/18 20:56:02.207 [1.2.3.4:31844 1 Mj6] Cookie _lscache_vary: admin_bar:1;logged-in:1;role:99 06/24/18 20:56:02.207 [1.2.3.4:31844 1 Mj6] X-LSCACHE: true 06/24/18 20:56:02.594 [1.2.3.4:31844 1 Mj6] Media init 06/24/18 20:56:02.601 [1.2.3.4:31844 1 Mj6] CDN init 06/24/18 20:56:02.602 [1.2.3.4:31844 1 Mj6] Task init 06/24/18 20:56:02.612 [1.2.3.4:31844 1 Mj6] [Router] LSCWP_CTRL bypassed empty 06/24/18 20:56:02.793 [1.2.3.4:31844 1 Mj6] [Ctrl] X Cache_control -> no Cache ( Admin page ) => LSC_Control::set_nocache()@312 => LSC_Admin->admin_init()@130 => WP_Hook->apply_filters()@286 06/24/18 20:56:02.796 [1.2.3.4:31844 1 Mj6] [Core] CHK html bypass: miss footer const 06/24/18 20:56:02.796 [1.2.3.4:31844 1 Mj6] [Ctrl] not cacheable before ctrl finalize 06/24/18 20:56:02.796 [1.2.3.4:31844 1 Mj6] [Router] get_uid: 1 => LSC_Router::get_uid()@175 => LSC_Vary->finalize_default_vary()@340 => LSC_Vary->_update_default_vary()@299 => LSC_Vary->_finalize()@513 06/24/18 20:56:02.796 [1.2.3.4:31844 1 Mj6] [Router] get_role: administrator 06/24/18 20:56:02.796 [1.2.3.4:31844 1 Mj6] [Cfg] role in vary_group [group] 99 06/24/18 20:56:02.796 [1.2.3.4:31844 1 Mj6] [Vary] show_admin_bar_front: true 06/24/18 20:56:02.796 [1.2.3.4:31844 1 Mj6] [Vary] admin bar : true 06/24/18 20:56:02.797 [1.2.3.4:31844 1 Mj6] [Vary] no custimzed vary 06/24/18 20:56:02.798 [1.2.3.4:31844 1 Mj6] X-LiteSpeed-Cache-Control: no-cache 06/24/18 20:56:02.798 [1.2.3.4:31844 1 Mj6] [Core] CHK html bypass: miss footer const 06/24/18 20:56:02.798 [1.2.3.4:31844 1 Mj6] [Media] bypass: Not frontend HTML type 06/24/18 20:56:02.798 [1.2.3.4:31844 1 Mj6] GUI bypassed by no counter 06/24/18 20:56:02.798 [1.2.3.4:31844 1 Mj6] [Optm] bypass: Not frontend HTML type 06/24/18 20:56:02.798 [1.2.3.4:31844 1 Mj6] CDN bypass 06/24/18 20:56:02.798 [1.2.3.4:31844 1 Mj6] End response --------------------------------------------------------------------------------
06/24/18 20:56:11.831 [1.2.3.4:31844 1 O9r] ------POST HTTP/1.1 (HTTPS) /wp-admin/post.php 06/24/18 20:56:11.831 [1.2.3.4:31844 1 O9r] Query String: 06/24/18 20:56:11.831 [1.2.3.4:31844 1 O9r] User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36 06/24/18 20:56:11.831 [1.2.3.4:31844 1 O9r] Accept Encoding: gzip, deflate, br 06/24/18 20:56:11.831 [1.2.3.4:31844 1 O9r] Cookie _lscache_vary: admin_bar:1;logged-in:1;role:99 06/24/18 20:56:11.831 [1.2.3.4:31844 1 O9r] X-LSCACHE: true 06/24/18 20:56:12.231 [1.2.3.4:31844 1 O9r] Media init 06/24/18 20:56:12.239 [1.2.3.4:31844 1 O9r] CDN init 06/24/18 20:56:12.240 [1.2.3.4:31844 1 O9r] Task init 06/24/18 20:56:12.245 [1.2.3.4:31844 1 O9r] [Router] LSCWP_CTRL bypassed empty 06/24/18 20:56:12.424 [1.2.3.4:31844 1 O9r] [Ctrl] X Cache_control -> no Cache ( Admin page ) => LSC_Control::set_nocache()@312 => LSC_Admin->admin_init()@130 => WP_Hook->apply_filters()@286 06/24/18 20:56:12.507 [1.2.3.4:31844 1 O9r] [Purge] added WC_T.18 => LSC_Purge->_add()@306 => LSC_Purge::add()@287 => LSC_API::purge()@269 => LSC_ThirdParty_WooCommerce->backend_purge()@717 => WP_Hook->apply_filters()@286 => WP_Hook->do_action()@310 => /home/domain/public_html/wp-content/plugins/litespeed-cache/inc/purge.class.php@453 => LSC_Purge->_get_purge_tags_by_post()@896 => LSC_Purge::purge_post()@645 06/24/18 20:56:12.507 [1.2.3.4:31844 1 O9r] X-LiteSpeed-Purge: public,87f1_WC_T.18 06/24/18 20:56:12.509 [1.2.3.4:31844 1 O9r] [Purge] added Po.37,URL.c5058f4b6fbb3ed974efbe319a954e61,W.recent-posts-2,T.2,T.9,T.18,A.1,PT.product,F,H,PGS,PGSRP,D.201806 => LSC_Purge->_add()@306 => LSC_Purge::purge_post()@653 => WP_Hook->apply_filters()@286 => WP_Hook->do_action()@310 => /home/domain/public_html/wp-includes/post.php@453 => /home/domain/public_html/wp-includes/post.php@3602 => /home/domain/public_html/wp-admin/includes/post.php@3713 => /home/domain/public_html/wp-admin/post.php@377 06/24/18 20:56:12.509 [1.2.3.4:31844 1 O9r] X-LiteSpeed-Purge: public,87f1_WC_T.18,87f1_Po.37,87f1_URL.c5058f4b6fbb3ed974efbe319a954e61,87f1_W.recent-posts-2,87f1_T.2,87f1_T.9,87f1_T.18,87f1_A.1,87f1_PT.product,87f1_F,87f1_H,87f1_PGS,87f1_PGSRP,87f1_D.201806 06/24/18 20:56:12.509 [1.2.3.4:31844 1 O9r] [Purge] added REST => LSC_Purge->_add()@306 => LSC_Purge::purge_post()@655 => WP_Hook->apply_filters()@286 => WP_Hook->do_action()@310 => /home/domain/public_html/wp-includes/post.php@453 => /home/domain/public_html/wp-includes/post.php@3602 => /home/domain/public_html/wp-admin/includes/post.php@3713 => /home/domain/public_html/wp-admin/post.php@377 06/24/18 20:56:12.509 [1.2.3.4:31844 1 O9r] X-LiteSpeed-Purge: public,87f1_WC_T.18,87f1_Po.37,87f1_URL.c5058f4b6fbb3ed974efbe319a954e61,87f1_W.recent-posts-2,87f1_T.2,87f1_T.9,87f1_T.18,87f1_A.1,87f1_PT.product,87f1_F,87f1_H,87f1_PGS,87f1_PGSRP,87f1_D.201806,87f1_REST 06/24/18 20:56:12.509 [1.2.3.4:31844 1 O9r] [Ctrl] X Cache_control -> stale 06/24/18 20:56:12.532 [1.2.3.4:31844 1 O9r] [Purge] added WC_T.9 => LSC_Purge->_add()@306 => LSC_Purge::add()@287 => LSC_API::purge()@269 => LSC_ThirdParty_WooCommerce->delete_rel()@692 => WP_Hook->apply_filters()@288 => WP_Hook->do_action()@310 => /home/domain/public_html/wp-includes/taxonomy.php@453 => /home/domain/public_html/wp-includes/taxonomy.php@2451 => /home/domain/public_html/wp-includes/post.php@2339 06/24/18 20:56:12.532 [1.2.3.4:31844 1 O9r] X-LiteSpeed-Purge: public,stale,87f1_WC_T.18,87f1_Po.37,87f1_URL.c5058f4b6fbb3ed974efbe319a954e61,87f1_W.recent-posts-2,87f1_T.2,87f1_T.9,87f1_T.18,87f1_A.1,87f1_PT.product,87f1_F,87f1_H,87f1_PGS,87f1_PGSRP,87f1_D.201806,87f1_REST,87f1_WC_T.9 06/24/18 20:56:12.596 [1.2.3.4:31844 1 O9r] [Ctrl] 301 from https://www.mydomain.com/wp-admin/post.php 06/24/18 20:56:12.596 [1.2.3.4:31844 1 O9r] [Ctrl] 301 to https://www.mydomain.com/wp-admin/post.php?post=37&action=edit&message=1 06/24/18 20:56:12.596 [1.2.3.4:31844 1 O9r] [Ctrl] X Cache_control -> no Cache ( 301 to same url ) => LSC_Control::set_nocache()@312 => LSC_Control::check_redirect()@462 => WP_Hook->apply_filters()@286 06/24/18 20:56:12.597 [1.2.3.4:31844 1 O9r] [Core] CHK html bypass: miss footer const 06/24/18 20:56:12.597 [1.2.3.4:31844 1 O9r] [Ctrl] not cacheable before ctrl finalize 06/24/18 20:56:12.597 [1.2.3.4:31844 1 O9r] [Router] get_uid: 1 => LSC_Router::get_uid()@175 => LSC_Vary->finalize_default_vary()@340 => LSC_Vary->_update_default_vary()@299 => LSC_Vary->_finalize()@513 06/24/18 20:56:12.597 [1.2.3.4:31844 1 O9r] [Router] get_role: administrator 06/24/18 20:56:12.597 [1.2.3.4:31844 1 O9r] [Cfg] role in vary_group [group] 99 06/24/18 20:56:12.597 [1.2.3.4:31844 1 O9r] [Vary] show_admin_bar_front: true 06/24/18 20:56:12.597 [1.2.3.4:31844 1 O9r] [Vary] admin bar : true 06/24/18 20:56:12.597 [1.2.3.4:31844 1 O9r] [Vary] no custimzed vary 06/24/18 20:56:12.598 [1.2.3.4:31844 1 O9r] X-LiteSpeed-Cache-Control: no-cache 06/24/18 20:56:12.598 [1.2.3.4:31844 1 O9r] X-LiteSpeed-Purge: public,stale,87f1_WC_T.18,87f1_Po.37,87f1_URL.c5058f4b6fbb3ed974efbe319a954e61,87f1_W.recent-posts-2,87f1_T.2,87f1_T.9,87f1_T.18,87f1_A.1,87f1_PT.product,87f1_F,87f1_H,87f1_PGS,87f1_PGSRP,87f1_D.201806,87f1_REST,87f1_WC_T.9 06/24/18 20:56:12.599 [1.2.3.4:31844 1 O9r] [Core] CHK html bypass: miss footer const 06/24/18 20:56:12.599 [1.2.3.4:31844 1 O9r] [Media] bypass: Not frontend HTML type 06/24/18 20:56:12.599 [1.2.3.4:31844 1 O9r] GUI bypassed by no counter 06/24/18 20:56:12.599 [1.2.3.4:31844 1 O9r] [Optm] bypass: Not frontend HTML type 06/24/18 20:56:12.599 [1.2.3.4:31844 1 O9r] CDN bypass 06/24/18 20:56:12.599 [1.2.3.4:31844 1 O9r] End response --------------------------------------------------------------------------------
06/24/18 20:56:12.901 [1.2.3.4:31844 1 bZS] ------GET HTTP/1.1 (HTTPS) /wp-admin/post.php 06/24/18 20:56:12.902 [1.2.3.4:31844 1 bZS] Query String: post=37&action=edit&message=1 06/24/18 20:56:12.902 [1.2.3.4:31844 1 bZS] User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36 06/24/18 20:56:12.902 [1.2.3.4:31844 1 bZS] Accept Encoding: gzip, deflate, br 06/24/18 20:56:12.902 [1.2.3.4:31844 1 bZS] Cookie _lscache_vary: admin_bar:1;logged-in:1;role:99 06/24/18 20:56:12.902 [1.2.3.4:31844 1 bZS] X-LSCACHE: true 06/24/18 20:56:13.239 [1.2.3.4:31844 1 bZS] Media init 06/24/18 20:56:13.301 [1.2.3.4:31844 1 bZS] CDN init 06/24/18 20:56:13.302 [1.2.3.4:31844 1 bZS] Task init 06/24/18 20:56:13.307 [1.2.3.4:31844 1 bZS] [Router] LSCWP_CTRL bypassed empty 06/24/18 20:56:13.434 [1.2.3.4:31844 1 bZS] [Ctrl] X Cache_control -> no Cache ( Admin page ) => LSC_Control::set_nocache()@312 => LSC_Admin->admin_init()@130 => WP_Hook->apply_filters()@286 06/24/18 20:56:13.554 [1.2.3.4:31844 1 bZS] [Core] CHK html bypass: miss footer const 06/24/18 20:56:13.554 [1.2.3.4:31844 1 bZS] [Ctrl] not cacheable before ctrl finalize 06/24/18 20:56:13.555 [1.2.3.4:31844 1 bZS] [Router] get_uid: 1 => LSC_Router::get_uid()@175 => LSC_Vary->finalize_default_vary()@340 => LSC_Vary->_update_default_vary()@299 => LSC_Vary->_finalize()@513 06/24/18 20:56:13.555 [1.2.3.4:31844 1 bZS] [Router] get_role: administrator 06/24/18 20:56:13.555 [1.2.3.4:31844 1 bZS] [Cfg] role in vary_group [group] 99 06/24/18 20:56:13.555 [1.2.3.4:31844 1 bZS] [Vary] show_admin_bar_front: true 06/24/18 20:56:13.555 [1.2.3.4:31844 1 bZS] [Vary] admin bar : true 06/24/18 20:56:13.555 [1.2.3.4:31844 1 bZS] [Vary] no custimzed vary 06/24/18 20:56:13.555 [1.2.3.4:31844 1 bZS] X-LiteSpeed-Cache-Control: no-cache 06/24/18 20:56:13.556 [1.2.3.4:31844 1 bZS] [Core] CHK html bypass: miss footer const 06/24/18 20:56:13.556 [1.2.3.4:31844 1 bZS] [Media] bypass: Not frontend HTML type 06/24/18 20:56:13.556 [1.2.3.4:31844 1 bZS] GUI bypassed by no counter 06/24/18 20:56:13.556 [1.2.3.4:31844 1 bZS] [Optm] bypass: Not frontend HTML type 06/24/18 20:56:13.556 [1.2.3.4:31844 1 bZS] CDN bypass 06/24/18 20:56:13.556 [1.2.3.4:31844 1 bZS] End response --------------------------------------------------------------------------------
06/24/18 20:56:14.713 [1.2.3.4:31844 1 ASt] ------GET HTTP/1.1 (HTTPS) /wp-admin/admin-ajax.php 06/24/18 20:56:14.713 [1.2.3.4:31844 1 ASt] Query String: action=oembed-cache&post=37 06/24/18 20:56:14.713 [1.2.3.4:31844 1 ASt] User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36 06/24/18 20:56:14.713 [1.2.3.4:31844 1 ASt] Accept Encoding: gzip, deflate, br 06/24/18 20:56:14.713 [1.2.3.4:31844 1 ASt] Cookie _lscache_vary: admin_bar:1;logged-in:1;role:99 06/24/18 20:56:14.713 [1.2.3.4:31844 1 ASt] X-LSCACHE: true 06/24/18 20:56:15.207 [1.2.3.4:31844 1 ASt] Media init 06/24/18 20:56:15.215 [1.2.3.4:31844 1 ASt] CDN init 06/24/18 20:56:15.216 [1.2.3.4:31844 1 ASt] Task init 06/24/18 20:56:15.225 [1.2.3.4:31844 1 ASt] [Router] LSCWP_CTRL bypassed empty 06/24/18 20:56:15.422 [1.2.3.4:31844 1 ASt] [Ctrl] X Cache_control -> no Cache ( Admin page ) => LSC_Control::set_nocache()@312 => LSC_Admin->admin_init()@130 => WP_Hook->apply_filters()@286 06/24/18 20:56:15.426 [1.2.3.4:31844 1 ASt] [Core] CHK html bypass: miss footer const 06/24/18 20:56:15.426 [1.2.3.4:31844 1 ASt] [Ctrl] not cacheable before ctrl finalize 06/24/18 20:56:15.426 [1.2.3.4:31844 1 ASt] [Router] get_uid: 1 => LSC_Router::get_uid()@175 => LSC_Vary->finalize_default_vary()@340 => LSC_Vary->_update_default_vary()@299 => LSC_Vary->_finalize()@513 06/24/18 20:56:15.426 [1.2.3.4:31844 1 ASt] [Router] get_role: administrator 06/24/18 20:56:15.426 [1.2.3.4:31844 1 ASt] [Cfg] role in vary_group [group] 99 06/24/18 20:56:15.426 [1.2.3.4:31844 1 ASt] [Vary] show_admin_bar_front: true 06/24/18 20:56:15.426 [1.2.3.4:31844 1 ASt] [Vary] admin bar : true 06/24/18 20:56:15.427 [1.2.3.4:31844 1 ASt] [Vary] no custimzed vary 06/24/18 20:56:15.428 [1.2.3.4:31844 1 ASt] X-LiteSpeed-Cache-Control: no-cache 06/24/18 20:56:15.428 [1.2.3.4:31844 1 ASt] [Core] CHK html bypass: miss footer const 06/24/18 20:56:15.428 [1.2.3.4:31844 1 ASt] [Media] bypass: Not frontend HTML type 06/24/18 20:56:15.428 [1.2.3.4:31844 1 ASt] GUI bypassed by no counter 06/24/18 20:56:15.428 [1.2.3.4:31844 1 ASt] [Optm] bypass: Not frontend HTML type 06/24/18 20:56:15.428 [1.2.3.4:31844 1 ASt] CDN bypass 06/24/18 20:56:15.428 [1.2.3.4:31844 1 ASt] End response --------------------------------------------------------------------------------
06/24/18 20:56:18.697 [1.2.3.4:31844 1 0R4] ------GET HTTP/1.1 (HTTPS) / 06/24/18 20:56:18.697 [1.2.3.4:31844 1 0R4] Query String: 06/24/18 20:56:18.697 [1.2.3.4:31844 1 0R4] User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36 06/24/18 20:56:18.697 [1.2.3.4:31844 1 0R4] Accept Encoding: gzip, deflate, br 06/24/18 20:56:18.697 [1.2.3.4:31844 1 0R4] Cookie _lscache_vary: admin_bar:1;logged-in:1;role:99 06/24/18 20:56:18.697 [1.2.3.4:31844 1 0R4] X-LSCACHE: true 06/24/18 20:56:19.018 [1.2.3.4:31844 1 0R4] Media init 06/24/18 20:56:19.026 [1.2.3.4:31844 1 0R4] CDN init 06/24/18 20:56:19.027 [1.2.3.4:31844 1 0R4] Task init 06/24/18 20:56:19.031 [1.2.3.4:31844 1 0R4] [Router] LSCWP_CTRL bypassed empty 06/24/18 20:56:19.031 [1.2.3.4:31844 1 0R4] GUI init 06/24/18 20:56:19.106 [1.2.3.4:31844 1 0R4] [Ctrl] X Cache_control init on 06/24/18 20:56:19.315 [1.2.3.4:31844 1 0R4] [Core] Footer hook called 06/24/18 20:56:19.316 [1.2.3.4:31844 1 0R4] ESI: [block ID] admin-bar [wrapper] adminbar [Control] private,no-vary 06/24/18 20:56:19.316 [1.2.3.4:31844 1 0R4] [Core] Footer check passed 06/24/18 20:56:19.316 [1.2.3.4:31844 1 0R4] [Router] get_uid: 1 => LSC_Router::get_uid()@175 => LSC_Router::get_role()@194 => LSC_Config->in_exclude_cache_roles()@556 => LSC_Control->_setting_cacheable()@694 06/24/18 20:56:19.316 [1.2.3.4:31844 1 0R4] [Router] get_role: administrator 06/24/18 20:56:19.317 [1.2.3.4:31844 1 0R4] [Cfg] role in vary_group [group] 99 06/24/18 20:56:19.317 [1.2.3.4:31844 1 0R4] [Vary] show_admin_bar_front: true 06/24/18 20:56:19.317 [1.2.3.4:31844 1 0R4] [Vary] admin bar : true 06/24/18 20:56:19.317 [1.2.3.4:31844 1 0R4] [Vary] no custimzed vary 06/24/18 20:56:19.317 [1.2.3.4:31844 1 0R4] X-LiteSpeed-Cache-Control: public,max-age=604800,esi=on 06/24/18 20:56:19.317 [1.2.3.4:31844 1 0R4] X-LiteSpeed-Tag: 87f1_URL.6666cd76f96956469e7be39d750cc7d9,87f1_F,87f1_Po.24,87f1_PGS,87f1_ 06/24/18 20:56:19.317 [1.2.3.4:31844 1 0R4] [Core] Footer check passed 06/24/18 20:56:19.317 [1.2.3.4:31844 1 0R4] [Media] finalize 06/24/18 20:56:19.317 [1.2.3.4:31844 1 0R4] GUI bypassed by no counter 06/24/18 20:56:19.317 [1.2.3.4:31844 1 0R4] [Optm] start 06/24/18 20:56:19.317 [1.2.3.4:31844 1 0R4] CDN bypass 06/24/18 20:56:19.317 [1.2.3.4:31844 1 0R4] End response --------------------------------------------------------------------------------
The above logs are generated from the following set of actions: visit homepage, edit product, visit home page again.
Find the Tags
Since LiteSpeed Cache is a tag-based caching system, let's find all of the tag(s).
X-LiteSpeed-Tag: 87f1_URL.6666cd76f96956469e7be39d750cc7d9,87f1_F,87f1_Po.24,87f1_PGS,87f1_
X-LiteSpeed-Tag: 87f1_tag_priv,public:87f1_ESI,public:87f1_ESI.admin-bar,public:87f1_
X-LiteSpeed-Tag: 87f1_URL.6666cd76f96956469e7be39d750cc7d9,87f1_F,87f1_Po.24,87f1_PGS,87f1_
And the purge action is also called by tag, so now let's find the purge tag.
X-LiteSpeed-Purge: public,87f1_WC_T.18
X-LiteSpeed-Purge: public,87f1_WC_T.18,87f1_Po.37,87f1_URL.c5058f4b6fbb3ed974efbe319a954e61,87f1_W.recent-posts-2,87f1_T.2,87f1_T.9,87f1_T.18,87f1_A.1,87f1_PT.product,87f1_F,87f1_H,87f1_PGS,87f1_PGSRP,87f1_D.201806
X-LiteSpeed-Purge: public,87f1_WC_T.18,87f1_Po.37,87f1_URL.c5058f4b6fbb3ed974efbe319a954e61,87f1_W.recent-posts-2,87f1_T.2,87f1_T.9,87f1_T.18,87f1_A.1,87f1_PT.product,87f1_F,87f1_H,87f1_PGS,87f1_PGSRP,87f1_D.201806,87f1_REST
X-LiteSpeed-Purge: public,stale,87f1_WC_T.18,87f1_Po.37,87f1_URL.c5058f4b6fbb3ed974efbe319a954e61,87f1_W.recent-posts-2,87f1_T.2,87f1_T.9,87f1_T.18,87f1_A.1,87f1_PT.product,87f1_F,87f1_H,87f1_PGS,87f1_PGSRP,87f1_D.201806,87f1_REST,87f1_WC_T.9
X-LiteSpeed-Purge: public,stale,87f1_WC_T.18,87f1_Po.37,87f1_URL.c5058f4b6fbb3ed974efbe319a954e61,87f1_W.recent-posts-2,87f1_T.2,87f1_T.9,87f1_T.18,87f1_A.1,87f1_PT.product,87f1_F,87f1_H,87f1_PGS,87f1_PGSRP,87f1_D.201806,87f1_REST,87f1_WC_T.9
Basically, if the tag(s) in X-LiteSpeed-Purge
is/are contained in the X-LiteSpeed-Tag
of other pages, then those other pages will be purged during the action.
Now let's check the above tags. We will see:
87f1_F
and 87f1_PGS
are contained by the homepage, so it gets purged.
87f1
is the prefix. Then what do F
and PGS
mean? You can see a list of tag classes in the code. Check lines 15-33.
Solution
F
and PGS
are triggered by the setting Auto Purge Rules For Publish/Update. If you do not want the Front page
or Pages
to be purged every time you update a WooCommerce item, then you need to uncheck those options.
Note: If you see the PGSRP
tag, that is for the Recent Posts Widget. You can uncheck the all pages with Recent Posts Widget
setting in the auto purge rules, to keep it from purging every page on your site. If you still want to keep the widget itself updated, enable ESI for the site, enable ESI for the Recent Posts Widget, and set it to Public
. That will keep the widget updated for new posts, but won't require every page it is on to be purged.