#This is the header part added by wordpress, skip adding this in your htaccess if you already have it in there
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
#END
# start Protect wp-config file from hackers
#<files wp-config.php>
#Order deny,allow
#deny from all</files>
# end Protect wp-config file from hackers
# BEGIN FORCE USE OF BROWSER CACHE
FileETag MTime Size
<ifmodule mod_expires.c>
<filesmatch "\.(jpg|gif|png|css|js|ico|jpeg|swf)$">
ExpiresActive on
ExpiresDefault "access plus 1 year"
</filesmatch>
</ifmodule>
#END FORCE USE OF BROWSER CACHE
# compress text, html, javascript, css, xml:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
#END compression
# BEGIN, compress certain file types by extension:
<Files *.html>
SetOutputFilter DEFLATE
</Files>
# END compress certain file types by extension
# Expires headers part of the caching part 1
ExpiresActive On
ExpiresDefault A0
ExpiresByType image/gif A2592000
ExpiresByType image/png AA2592000
ExpiresByType image/jpg AA2592000
ExpiresByType image/jpeg AA2592000
ExpiresByType image/ico A2592000
ExpiresByType application/javascript AA2592000
ExpiresByType application/x-javascript AA2592000
ExpiresByType text/javascript AA2592000
ExpiresByType text/html A3600
ExpiresByType text/xml A3600
ExpiresByType text/css A604800
ExpiresByType text/plain A3600
ExpiresByType image/bmp A2592000
ExpiresByType application/x-shockwave-flash A2592000
#END Caching part 1
# BEGIN DENY COMMENT POSTING TO NO REFERRER REQUESTS to stop spam
#RewriteEngine On
#RewriteCond %{REQUEST_METHOD} POST
#RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
#RewriteCond %{HTTP_USER_AGENT} ^$
#END DENY COMMENT POSTING TO NO REFERRER REQUESTS to block spam
#secure htaccess file
<Files .htaccess>
order allow,deny
deny from all
</Files>
#END
# Custom 403 error messages
<Files 403.shtml>
order allow,deny
allow from all
</Files>
#END
#START libperl spam and hacking blocking
SetEnvIfNoCase User-Agent "^libwww-perl*" block_bad_bots
Deny from env=block_bad_bots
#END libperl block