Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
Insane mod_rewrite gymnastics for my blog setup.
RewriteEngine On
# Map to /jekyll.
RewriteRule ^$ /jekyll/ [L]
# Map to /jekyll/x unless there is a x in the web root.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/jekyll/
RewriteRule ^(.*)$ /jekyll/$1
# Add trailing slash to directories without them so DirectoryIndex works.
# This does not expose the internal URL.
RewriteCond %{REQUEST_FILENAME} -d
RewriteCond %{REQUEST_FILENAME} !/$
RewriteRule ^(.*)$ $1/
# Disable auto-adding slashes to directories without them, since this happens
# after mod_rewrite and exposes the rewritten internal URL, e.g. turning
# into
DirectorySlash off
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment