Last active
April 21, 2016 10:19
-
-
Save IainIsCreative/c368a62f7a95db1c93bb4cc41476b6e8 to your computer and use it in GitHub Desktop.
Revisions
-
IainIsCreative revised this gist
Apr 21, 2016 . No changes.There are no files selected for viewing
-
IainIsCreative created this gist
Apr 21, 2016 .There are no files selected for viewing
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 charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,194 @@ # ###################################################################### # CUSTOM HELPERS # ###################################################################### # ---------------------------------------------------------------------- # Load images from remote server if they aren't found locally # useful once a site has gone into production # ---------------------------------------------------------------------- #<IfModule mod_rewrite.c> # RewriteEngine on # RewriteCond %{REQUEST_FILENAME} !-d # RewriteCond %{REQUEST_FILENAME} !-f # RewriteRule content/uploads/(.*) \ # http://{change-to-production-url}/content/uploads/$1 [NC,L] #</IfModule> # ###################################################################### # WORDPRESS # pretty permalink rewrite # ###################################################################### <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # ###################################################################### # # SECURITY # # ###################################################################### # ---------------------------------------------------------------------- # File access # Block access to directories without a default document. # You should leave the following uncommented, as you shouldn't allow # anyone to surf through every directory on your server (which may # includes rather private places such as the CMS's directories). # ---------------------------------------------------------------------- <IfModule mod_autoindex.c> Options -Indexes </IfModule> # ---------------------------------------------------------------------- # Server software information # Prevent Apache from adding a trailing footer line containing # information about the server to the server-generated documents # (e.g.: error messages, directory listings, etc.) # https://httpd.apache.org/docs/current/mod/core.html#serversignature # ---------------------------------------------------------------------- ServerSignature Off # ###################################################################### # PERFORMANCE # ###################################################################### # ---------------------------------------------------------------------- # Compression # ---------------------------------------------------------------------- <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE image/x-icon AddOutputFilterByType DEFLATE image/svg+xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/x-font AddOutputFilterByType DEFLATE application/x-font-truetype AddOutputFilterByType DEFLATE application/x-font-ttf AddOutputFilterByType DEFLATE application/x-font-otf AddOutputFilterByType DEFLATE application/x-font-opentype AddOutputFilterByType DEFLATE application/vnd.ms-fontobject AddOutputFilterByType DEFLATE font/ttf AddOutputFilterByType DEFLATE font/otf AddOutputFilterByType DEFLATE font/opentype # For Olders Browsers Which Can't Handle Compression BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html </IfModule> # ---------------------------------------------------------------------- # Content transformation # # Prevent intermediate caches or proxies (e.g.: such as the ones # used by mobile network providers) from modifying the website's content. # https://developers.google.com/speed/pagespeed/module/configuration#notransform # ---------------------------------------------------------------------- #<IfModule mod_headers.c> # Header merge Cache-Control "no-transform" #</IfModule> # ---------------------------------------------------------------------- # Expires headers # # Serve resources with far-future expires headers. # (!) If you don't control versioning with filename-based # cache busting, you should consider lowering the cache times # to something like one week. # https://httpd.apache.org/docs/current/mod/mod_expires.html # ---------------------------------------------------------------------- <IfModule mod_expires.c> ExpiresActive on ExpiresDefault "access plus 1 month" # CSS ExpiresByType text/css "access plus 1 year" # Data interchange ExpiresByType application/atom+xml "access plus 1 hour" ExpiresByType application/rdf+xml "access plus 1 hour" ExpiresByType application/rss+xml "access plus 1 hour" ExpiresByType application/json "access plus 0 seconds" ExpiresByType application/ld+json "access plus 0 seconds" ExpiresByType application/schema+json "access plus 0 seconds" ExpiresByType application/vnd.geo+json "access plus 0 seconds" ExpiresByType application/xml "access plus 0 seconds" ExpiresByType text/xml "access plus 0 seconds" # Favicon (cannot be renamed!) and cursor images ExpiresByType image/vnd.microsoft.icon "access plus 1 week" ExpiresByType image/x-icon "access plus 1 week" # HTML ExpiresByType text/html "access plus 0 seconds" # JavaScript ExpiresByType application/javascript "access plus 1 year" ExpiresByType application/x-javascript "access plus 1 year" ExpiresByType text/javascript "access plus 1 year" # Manifest files ExpiresByType application/manifest+json "access plus 1 week" ExpiresByType application/x-web-app-manifest+json "access plus 0 seconds" ExpiresByType text/cache-manifest "access plus 0 seconds" # Media files ExpiresByType audio/ogg "access plus 1 month" ExpiresByType image/bmp "access plus 1 month" ExpiresByType image/gif "access plus 1 month" ExpiresByType image/jpeg "access plus 1 month" ExpiresByType image/png "access plus 1 month" ExpiresByType image/svg+xml "access plus 1 month" ExpiresByType image/webp "access plus 1 month" ExpiresByType video/mp4 "access plus 1 month" ExpiresByType video/ogg "access plus 1 month" ExpiresByType video/webm "access plus 1 month" # Web fonts # Embedded OpenType (EOT) ExpiresByType application/vnd.ms-fontobject "access plus 1 month" ExpiresByType font/eot "access plus 1 month" # OpenType ExpiresByType font/opentype "access plus 1 month" # TrueType ExpiresByType application/x-font-ttf "access plus 1 month" # Web Open Font Format (WOFF) 1.0 ExpiresByType application/font-woff "access plus 1 month" ExpiresByType application/x-font-woff "access plus 1 month" ExpiresByType font/woff "access plus 1 month" # Web Open Font Format (WOFF) 2.0 ExpiresByType application/font-woff2 "access plus 1 month" # Other ExpiresByType text/x-cross-domain-policy "access plus 1 week" </IfModule>