emilstahl

Awesome .htaccess

Jul 28th, 2013
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.08 KB | None | 0 0
  1. # BEGIN UTF-8 encoding
  2.  AddDefaultCharset UTF-8
  3. # END UTF-8 encoding
  4.  
  5. # BEGIN X-Hello funny header
  6.  Header always set X-Hello "You must be bored :)"
  7. # END X-Hello funny header
  8.  
  9. # BEGIN Site protection
  10.  # BEGIN XSS-Protection https://www.owasp.org/index.php/List_of_useful_HTTP_headers
  11.   Header always set X-XSS-Protection: "1; mode=block"
  12.   # END XSS-Protection
  13.  
  14.   # BEGIN Secure files
  15.    <Files .htaccess>
  16.     order allow,deny
  17.     deny from all
  18.     </Files>
  19.     Options +FollowSymlinks
  20.   # END Secure files
  21. # END Site protection
  22.  
  23.  
  24. # BEGIN SEO
  25.  # BEGIN SEO No index of sitemap.xml
  26.   <Files sitemap.xml>
  27.     Header set X-Robots-Tag "noindex"
  28.    </Files>
  29.   # END SEO No index of sitemap.xml
  30.  
  31.   # BEGIN No subdomains
  32.    RewriteEngine On
  33.     RewriteBase /
  34.     RewriteCond %{HTTP_HOST} \.([^\.]+\.[^.0-9]+)$
  35.     RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
  36.   # END No subdomains
  37. # END SEO
  38.  
  39.  
  40. # BEGIN Site load optimization
  41.  # BEGIN Gzip and Vary: Accept-Encoding
  42.    AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript text/javascript
  43.     Header set Vary: Accept-Encoding
  44.   # END Gzip and Vary: Accept-Encoding
  45.  
  46.   # BEGIN Expire headers
  47.    ExpiresActive On
  48.     ExpiresDefault "access plus 1 seconds"
  49.     ExpiresByType image/x-icon "access plus 2592000 seconds"
  50.     ExpiresByType image/jpeg "access plus 2592000 seconds"
  51.     ExpiresByType image/png "access plus 2592000 seconds"
  52.     ExpiresByType image/gif "access plus 2592000 seconds"
  53.     ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
  54.     ExpiresByType text/css "access plus 604800 seconds"
  55.     ExpiresByType text/javascript "access plus 216000 seconds"
  56.     ExpiresByType application/x-javascript "access plus 216000 seconds"
  57.     ExpiresByType application/javascript "access plus 216000 seconds"
  58.     ExpiresByType text/html "access plus 7200 seconds"
  59.     ExpiresByType application/xhtml+xml "access plus 7200 seconds"
  60.   # END Expire headers
  61.  
  62.   # BEGIN Cache-Control Headers
  63.    <FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
  64.       Header set Cache-Control "max-age=2592000, public"
  65.     </FilesMatch>
  66.     <FilesMatch "\\.(css)$">
  67.       Header set Cache-Control "max-age=604800, public"
  68.     </FilesMatch>
  69.     <FilesMatch "\\.(js)$">
  70.       Header set Cache-Control "max-age=604800, public"
  71.     </FilesMatch>
  72.     <FilesMatch "\\.(x?html?|php)$">
  73.       Header set Cache-Control "max-age=3600, public"
  74.     </FilesMatch>
  75.   # END Cache-Control Headers
  76.  
  77.   # BEGIN Turn ETags Off
  78.    Header unset ETag
  79.   FileETag None
  80.   # END Turn ETags Off
  81. # END  Site load optimization
  82.  
  83. # BEGIN Rewrite urls/pages
  84.  # BEGIN Nice affiliate links - go.php - go/site/variable1/variable2
  85.    RewriteEngine on
  86.     RewriteRule ^go/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$ go.php?site=$1&variable1=$2&variable2=$3
  87.   # END Nice affiliate links - go.php - go/site/variable1/variable2
  88.  
  89.   # BEGIN Other pages - alias to files
  90.    RewriteRule ^whois$ whois.php
  91.   # END Other pages - alias to files
  92. #END Rewrite urls/pages
Advertisement
Add Comment
Please, Sign In to add comment