Installation URLRewriting mod_rewrite

mod_proxy Examples

Load balanced cluster example which only proxies CFML files:

ProxyPreserveHost On
ProxyPassReverse / balancer://tom_cluster/
RewriteEngine On
# uncomment below RewriteCond for "verify file exists" functionality:
#RewriteCond %{DOCUMENT_ROOT}/$1 -f
# Proxy CFML requests (barring the admin) to Tomcat:
RewriteCond %{REQUEST_fileNAME} !^\/lucee/admin.*
RewriteRule ^/(.*\.cf[cm]l?)(/.*)?$ balancer://tom_cluster/$1$2 [P]

Security Related Rewrites

Security rewrites (used to block unwanted traffic). Builds on above example to optionally capture these requests to a cfml page, otherwise /security-violation.htm should resolve to something:

RewriteEngine on
RewriteRule .*NVARCHAR.* /security-violation.htm [NC]
RewriteRule .*DECLARE.* /security-violation.htm [NC]
RewriteRule .*INSERT.* /security-violation.htm [NC]
RewriteRule .*xp_.* /security-violation.htm [NC]
RewriteRule .*@.* /security-violation.htm [NC]
RewriteRule .*’;* /security-violation.htm [NC]
RewriteRule .*EXEC\(@.* /security-violation.htm [NC]
RewriteRule .*sp_password.* /security-violation.htm [NC]
RewriteRule /security-violation.htm /security-violation.cfm [L]

RewriteCond %{QUERY_STRING} .http://. [NC] RewriteRule .* /security-violation.htm RewriteCond %{QUERY_STRING} .sp_password. [NC] RewriteRule .* /security-violation.htm RewriteCond %{QUERY_STRING} .@@. [NC] RewriteRule .* /security-violation.htm RewriteCond %{QUERY_STRING} .'. [NC]RewriteRule .* /security-violation.htm RewriteCond %{QUERY_STRING} .CHAR(. [NC] RewriteRule .* /security-violation.htm RewriteCond %{QUERY_STRING} .CAST(. [NC] RewriteRule .* /security-violation.htm RewriteCond %{QUERY_STRING} .EXEC(@. [NC] RewriteRule .* /security-violation.htm RewriteCond %{QUERY_STRING} .DECLARE. [NC] RewriteRule .* /security-violation.htm

uncomment to use the specified cfm pageRewriteRule /security-violation.htm balancer://tom_cluster/security-violation.cfm [P,L]

RewriteCond %{REQUEST_METHOD} ^(delete|head|trace|track) [NC] RewriteRule ^(.*)$ - [F,L]

RewriteCond %{HTTP_COOKIE} ^.(<|>|'|%0A|%0D|%27|%3C|%3E|%00). [NC] RewriteRule ^(.*)$ - [F,L]

RewriteCond %{HTTP_USER_AGENT} ^$ [OR] RewriteCond %{HTTP_USER_AGENT} ^.(<|>|'|%0A|%0D|%27|%3C|%3E|%00). [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^.(HTTrack|clshttp|archiver|loader|email|nikto|miner|python). [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^.(winhttp|libwww-perl|curl|wget|harvest|scan|grab|extract). [NC] RewriteRule ^(.*)$ - [F,L]

RewriteCond %{HTTP_REFERER} ^(.)(<|>|'|%0A|%0D|%27|%3C|%3E|%00). [NC,OR] RewriteCond %{HTTP_REFERER} ^http://(www.)?.(-|.)?adult(-|.).$ [NC,OR] RewriteCond %{HTTP_REFERER} ^http://(www.)?.(-|.)?poker(-|.).$ [NC,OR] RewriteCond %{HTTP_REFERER} ^http://(www.)?.(-|.)?drugs(-|.).$ [NC] RewriteRule ^(.*)$ - [F,L]