fdelin/ajax-framework/master/.htaccess - Htaccess File

fdelin/ajax-framework/master/.htaccess

########## REWRITE SETTINGS ##############################
<IfModule mod_rewrite.c>
  RewriteEngine on 
  RewriteBase /

  RewriteCond %{QUERY_STRING} ^_escaped_fragment_=(.*)$
  RewriteRule ^(.*)$ http://www.%{HTTP_HOST}%1? [L,R=301]

  #if trailing / remove it with a permanent redirect
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)/$ /$1 [L,R=301]

  #if missing www. add it with a permanent redirect
  RewriteCond %{HTTP_HOST} !^www.
  RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301] 

  #requests for index.php never rewritten
  RewriteRule ^index.php$ - [L]

  #if file or directory are missing, route to index.php
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.php [L]

</IfModule>

########## COMPRESSION ##############################
<IfModule pagespeed_module>
  ModPagespeed on
  ModPagespeedEnableFilters
  extend_cache,combine_css,combine_javascript,collapse_whitespace,move_css_to_head
</IfModule>

<ifModule mod_deflate.c>
  # Compress all files matching the following extensions
  <filesMatch ".(css|js|x?html?|php)$">
      SetOutputFilter DEFLATE
  </filesMatch>

  # Compress all output labeled with one of the following MIME-types
  <IfModule mod_filter.c>
    AddOutputFilterByType DEFLATE application/atom+xml 
                                  application/javascript 
                                  application/json 
                                  application/rss+xml 
                                  application/vnd.ms-fontobject 
                                  application/x-font-ttf 
                                  application/x-web-app-manifest+json 
                                  application/xhtml+xml 
                                  application/xml 
                                  font/opentype 
                                  image/svg+xml 
                                  image/x-icon 
                                  text/css 
                                  text/html 
                                  text/plain 
                                  text/x-component 
                                  text/xml    
  </ifModule>
</ifModule>

<ifModule mod_gzip.c>
  mod_gzip_on Yes
  mod_gzip_dechunk Yes
  mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
  mod_gzip_item_include handler ^cgi-script$
  mod_gzip_item_include mime ^text/.*
  mod_gzip_item_include mime ^application/x-javascript.*
  mod_gzip_item_exclude mime ^image/.*
  mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

########## EXPIRATION OF FILES ##############################
<IfModule mod_expires.c>
    ExpiresActive on
    ExpiresDefault                                      "access plus 1 month"

  # CSS
    ExpiresByType text/css                              "access plus 1 week"

  # Data interchange
    ExpiresByType application/json                      "access plus 1 seconds"
    ExpiresByType application/ld+json                   "access plus 1 seconds"
    ExpiresByType application/vnd.geo+json              "access plus 1 seconds"
    ExpiresByType application/xml                       "access plus 1 seconds"
    ExpiresByType text/xml                              "access plus 1 seconds"

  # Favicon and cursor images
    ExpiresByType image/x-icon                          "access plus 1 week"

  # HTML components (HTCs)
    ExpiresByType text/x-component                      "access plus 1 month"

  # HTML
    ExpiresByType text/html                             "access plus 1 hour"

  # JavaScript
    ExpiresByType text/x-javascript                     "access plus 1 week"
    ExpiresByType application/javascript                "access plus 1 week"
    ExpiresByType application/x-javascript              "access plus 1 week"

  # Manifest files
    ExpiresByType application/manifest+json             "access plus 1 year"
    ExpiresByType application/x-web-app-manifest+json   "access plus 1 seconds"
    ExpiresByType text/cache-manifest                   "access plus 1 seconds"

  # Media
    ExpiresByType audio/ogg                             "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 video/mp4                             "access plus 1 month"
    ExpiresByType video/ogg                             "access plus 1 month"
    ExpiresByType video/webm                            "access plus 1 month"

  # Web feeds
    ExpiresByType application/atom+xml                  "access plus 1 hour"
    ExpiresByType application/rss+xml                   "access plus 1 hour"

  # Web fonts
    ExpiresByType application/font-woff                 "access plus 1 month"
    ExpiresByType application/font-woff2                "access plus 1 month"
    ExpiresByType application/vnd.ms-fontobject         "access plus 1 month"
    ExpiresByType application/x-font-ttf                "access plus 1 month"
    ExpiresByType font/opentype                         "access plus 1 month"
    ExpiresByType image/svg+xml                         "access plus 1 month"
</IfModule>
# END Expires

On Github License

Files

Download PDF of Htaccess file
DEFLATE, HTTP_HOST, QUERY_STRING, REQUEST_FILENAME

Comments

Apache