W3tc page cache won't work for HTTPS unless "Cache SSL (https) requests" option is checked


The only way I could make it work while using HTTPS is to enable “Cache SSL (https) requests” via the “page cache” w3tc settings page

Why is it so?


OK, it seems that with SSL, the ssl option has to be checked (why? nvm), but then the w3tc.conf and w3tc-php7.conf files need to be fixed up to take the “_ssl” suffix into account

Instead of location / { try_files /wp-content/cache/page_enhanced/${host}${cache_uri}_index.html $uri $uri/ /index.php?$args; } you’d want location / { try_files /wp-content/cache/page_enhanced/${host}${cache_uri}_index_ssl.html $uri $uri/ /index.php?$args; } Note the “_index_ssl.html”

I guess that’s something that should work well when the LE ee script works well?