stuarteske/Unix-Shell-Scripts-and-Tools/master/stub-wordpress-root.htaccess - Htaccess File

stuarteske/Unix-Shell-Scripts-and-Tools/master/stub-wordpress-root.htaccess

SetEnvIfNoCase ^User-Agent$ .*(craftbot|download|extract|stripper|sucker|ninja|clshttp|webspider|leacher|collector|grabber|webpictures|outlook) bad_bot
Order Deny,Allow
Deny from env=bad_bot

# Protect files and directories from prying eyes.
<FilesMatch ".(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(.php)?|xtmpl)(~|.sw[op]|.bak|.orig|.save)?$|^(..*|Entries.*|Repository|Root|Tag|Template)$|^#.*#$|.php(~|.sw[op]|.bak|.orig.save)$">
  Order allow,deny
</FilesMatch>

# Redirect from old domain to new domain
#<IfModule mod_rewrite.c>
#  RewriteEngine On
#  RewriteCond %{HTTP_HOST} ^olddomain.co.uk$ [OR]
#  RewriteCond %{HTTP_HOST} ^www.olddomain.co.uk$ [OR]
#  RewriteCond %{HTTP_HOST} ^www.aliasdomain.com$ [OR]
#  RewriteCond %{HTTPS} off
#  RewriteRule (.*)$ https://newdomain.com/$1 [R=301,L]
#</IfModule>

# Single page redirect
#Redirect 301 /old/old.htm http://www.domain.com/new.htm

#order deny,allow
#deny from all
#allow from 92.19.200.46

# BEGIN WordPress
<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 WordPress

<files ~ "^.*.([Hh][Tt][Aa])">
order allow,deny
deny from all
satisfy all
</files>

<files wp-config.php>
order allow,deny
deny from all
</files>

<files xmlrpc.php>
order allow,deny
deny from all
</files>

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]
</IfModule>

<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access 1 year"
ExpiresByType image/jpeg "access 1 year"
ExpiresByType image/gif "access 1 year"
ExpiresByType image/png "access 1 year"
ExpiresByType text/css "access 1 month"
ExpiresByType application/pdf "access 1 month"
ExpiresByType text/x-javascript "access 1 month"
ExpiresByType application/x-shockwave-flash "access 1 month"
ExpiresByType image/x-icon "access 1 year"
ExpiresDefault "access 2 days"
</IfModule>

# Redirect all traffic to maintenance.html file
#RewriteEngine on
#RewriteCond %{REQUEST_URI} !/maintenance.html$
#RewriteCond %{REMOTE_ADDR} !^123.123.123.123
#RewriteRule $ /maintenance.html [R=302,L]

# Custom error page for error 403, 404 and 500
#ErrorDocument 404 /error.html
#ErrorDocument 403 / error.html
#ErrorDocument 500 / error.html

On Github License

Files

Download PDF of Htaccess file
HTTP_HOST, HTTPS, REMOTE_ADDR, REQUEST_FILENAME, REQUEST_URI

Comments

Apache