Last active
September 16, 2021 20:47
-
-
Save mcguffin/31f80070d631d56da23cefb4ef1b6649 to your computer and use it in GitHub Desktop.
Generic Cachify .htaccess for ssl enabled sites
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# BEGIN CACHIFY | |
<IfModule mod_rewrite.c> | |
# ENGINE ON | |
RewriteEngine on | |
RewriteBase / | |
# set hostname directory | |
RewriteCond %{HTTPS} on | |
RewriteRule .* - [E=CACHIFY_HOST:https-%{HTTP_HOST}] | |
RewriteCond %{HTTPS} off | |
RewriteRule .* - [E=CACHIFY_HOST:%{HTTP_HOST}] | |
# set subdirectory | |
# sometimes %{REQUEST_URI} might be an empty string, so /$ won't match | |
RewriteCond %{REQUEST_URI} /$ | |
RewriteRule .* - [E=CACHIFY_DIR:%{REQUEST_URI}] | |
RewriteCond %{REQUEST_URI} ^$ | |
RewriteRule .* - [E=CACHIFY_DIR:/] | |
# gzip | |
RewriteRule .* - [E=CACHIFY_SUFFIX:] | |
<IfModule mod_mime.c> | |
RewriteCond %{HTTP:Accept-Encoding} gzip | |
RewriteRule .* - [E=CACHIFY_SUFFIX:.gz] | |
AddType text/html .gz | |
AddEncoding gzip .gz | |
</IfModule> | |
# Main Rules | |
RewriteCond %{REQUEST_METHOD} !=POST | |
RewriteCond %{QUERY_STRING} ^$ | |
RewriteCond %{REQUEST_URI} !^/(wp-admin|wp-content/cache)/.* | |
RewriteCond %{HTTP_COOKIE} !(wp-postpass|wordpress_logged_in|comment_author)_ | |
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/cachify/%{ENV:CACHIFY_HOST}%{ENV:CACHIFY_DIR}index.html -f | |
RewriteRule ^(.*) /wp-content/cache/cachify/%{ENV:CACHIFY_HOST}%{ENV:CACHIFY_DIR}index.html%{ENV:CACHIFY_SUFFIX} [L] | |
</IfModule> | |
# END CACHIFY |
Provider specific .htaccess
Thanks for Your proposal.
I miss some escapings - and every non cachify file like js, css and jpg is checked within the main rule for existing of files inside cachify path!
My proposal for the # Main Rules:
# Main Rules
RewriteCond %{ENV:CACHIFY_DIR} !^$
RewriteCond %{REQUEST_METHOD} !=POST
RewriteCond %{QUERY_STRING} ^$
RewriteCond %{REQUEST_URI} !^\/(wp\-admin|wp\-content\/cache)\/.*
RewriteCond %{HTTP_COOKIE} !(wp\-postpass|wordpress_logged_in|comment_author)_
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/cachify/%{ENV:CACHIFY_HOST}%{ENV:CACHIFY_DIR}index.html%{ENV:CACHIFY_SUFFIX}-f
RewriteRule ^(.*) /wp-content/cache/cachify/%{ENV:CACHIFY_HOST}%{ENV:CACHIFY_DIR}index.html%{ENV:CACHIFY_SUFFIX} [L]
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Update 2016-10-04: