# Custom error pages for php scripts only
ErrorDocument 400 /error.php?400
ErrorDocument 401 /error.php?401
ErrorDocument 403 /error.php?403
ErrorDocument 404 /error.php?404
ErrorDocument 500 /error.php?500
### Performance
AddDefaultCharset utf-8
### Security
ServerSignature Off
# secure htaccess file
order allow,deny
deny from all
# protect e107_config.php
order allow,deny
deny from all
### Block Bad Bots
SetEnvIfNoCase ^User-Agent$ .*(craftbot|download|extract|stripper|sucker|ninja|clshttp|webspider|leacher|collector|grabber|webpictures) HTTP_SAFE_BADBOT
SetEnvIfNoCase ^User-Agent$ .*(libwww-perl|aesop_com_spiderman) HTTP_SAFE_BADBOT
Deny from env=HTTP_SAFE_BADBOT
### Disable directory listing
Options -Indexes
### limit file uploads to 10mb
### LimitRequestBody 10240000
SetEnv HTTP_MOD_REWRITE On
### enable rewrites
Options +FollowSymLinks
RewriteEngine On
### Set this to your e107 site root, path relative to web root
### Uncomment it in case your server isn't able to rewrite proper
#RewriteBase /
### Allow only GET and POST methods
RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK|OPTIONS|HEAD)
RewriteRule .* - [F]
### send 404 on missing files in these folders
RewriteCond %{REQUEST_URI} !^/(e107_images|e107_files)/
### don't rewrite for existing files, directories and links
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
### Single entry point ###
RewriteRule .* index.php [L]
### Enable when developing locally.
### SetEnv E_DEV true