Ok I also tried this: if (-e /wp-content/cache/supercache/$http_host/$request_filename) { rewrite ^(.*) /wp-content/cache/supercache/$http_host/$1index.html break; } Check and see if this directory is here based on the requested file name. If it's there use this rewrite rule. Didn't work either. Anyone else got any ideas?