Kataloogilistingu lubamine
Options +Indexes
Teatud IP-aadressi(de) blokeerimine
<RequireAll>
Require all granted
Require not ip 1.2.3.4
Require not ip 12.34.56.78
</RequireAll>
Päringute lubamine vaid ühelt konkreetselt IP-aadressilt
Require ip 1.2.3.4
Teatud USER_AGENT-i (näiteks paha Boti) blokeerimine
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} PahaBot
RewriteRule .* - [F]
Mitme USER_AGENT-i blokeerimine
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} PahaBot [OR]
RewriteCond %{HTTP_USER_AGENT} KuriScanner [OR]
RewriteCond %{HTTP_USER_AGENT} Võlts
RewriteRule .* - [F]
Keela ligipääs kindlale failile
<Files "keelatud.php">
Order Allow,Deny
Deny from all
</Files>
Lihtne ümbersuunamine
# Peadomeeni ümbersuunamine Redirect 301 / https://www.example.ee/ # Aegunud lingi ümbersuunamine Redirect 301 /aegunud-lk https://www.example.ee/uus-lk
Kõikide päringute suunamine ühe domeeni peale
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteRule ^(.*)$ https://example.com%{REQUEST_URI} [R=301,L]
Ilma www-ta algava domeeni suunamine www-ga algava peale
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example\.ee$ [NC]
RewriteRule (.*) https://www.example.ee/$1 [NC,R=301,L]
või:
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]
www-ga algava domeeni suunamine ilma www-ta domeeni peale
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.example\.ee$ [NC]
RewriteRule (.*) https://example.ee/$1 [NC,R=301,L]
või:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1%{REQUEST_URI} [NC,R=301,L]
Valitud ressurside (font’id, svg, css ja js failid) lubamine mõnelt teiselt, serveri omast erinevalt domeenilt (Cross-Origin Resource Sharing (CORS))
<IfModule mod_headers.c>
<FilesMatch "\.(ttf|ttc|otf|eot|woff|woff2|svg|font.css|css|js)$">
Header set Access-Control-Allow-Origin "https://www.example.ee"
</FilesMatch>
</IfModule>
HSTS, Content Security Policy jt turvalisusega seotud päised
<IfModule mod_headers.c>
Header set Strict-Transport-Security "max-age=31536000;includeSubDomains;preload" env=HTTPS
Header set X-Frame-Options "DENY"
Header set Content-Security-Policy "default-src https:; script-src https: 'unsafe-inline'; style-src https:'unsafe-inline'"
Header set X-XSS-Protection "1; mode=block"
Header set X-Content-Type-Options nosniff
</IfModule>
Ainult Eesti IP aadressidelt päringute lubamine
order deny,allow deny from all allow from env=DZSP_IS_ESTONIAN_IP
Ainult Euroopa liidu riikidest ligipääsu lubamine
SetEnvIf MM_COUNTRY_CODE ^(AT|BE|BG|CZ|CY|DE|DK|EE|EL|ES|FI|FR|HR|HU|IE|IT|LT|LU|LV|MT|NL|PL|PT|RO|SE|SI|SK) EUROLIIT order deny,allow deny from all allow from env=EUROLIIT
Ühe konkreetse riigi blokeerimine, näiteks Hiina (CN)
SetEnvIf MM_COUNTRY_CODE ^(CN) BlokeeritudRiik Deny from env=BlokeeritudRiik
POST-päringute blokeerimine määratud riikidest
# Kui päringu IP-aadressile vastab riigikood (formaat: ISO 3166),
# siis defineeri keskkonna muutuja BLOCKED_COUNTRIES.
SetEnvIf MM_COUNTRY_CODE ^(CN|HK|KP|KH|IN|VN|ID|PK|NP|BD|MA|NE|KE|EG|ET|SO|IR|IQ|RU|BY|RO|BR|CO|VE)$ BLOCKED_COUNTRIES
# Kui päring on POST-tüüpi ja
# keskkonna muutuja BLOCKED_COUNTRIES on defineeritud,
# siis blokeeri päring.
<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{ENV:BLOCKED_COUNTRIES} =1
RewriteRule .* – [F,L]
</IfModule>
Ühe riigi (Soome) kasutajate suunamine teisele domeenile
SetEnvIf MM_COUNTRY_CODE ^(FI) FINLAND
RewriteCond %{ENV:FINLAND} ^1$
RewriteRule .* http://www.example.fi%{REQUEST_URI} [R=301,L]
Serverites on kasutusel GeoLite2 andmebaas, mis on loodud MaxMind poolt ja mille saab alla laadida aadressilt https://www.maxmind.com.
Hooldusrežiim – suuna ajutiselt kõik päringud hooldusest teavitavale leheküljele
# Lisa vajadusel enne RewriteRule'i URI-d, mis peavad läbi pääsema
# Lisa oma internetiühenduse IP-aadress
RewriteCond %{REQUEST_URI} !/hooldus.html [NC]
RewriteCond %{REQUEST_URI} !/hooldus\.css [NC]
RewriteCond %{REQUEST_URI} !/hooldus\.jpg [NC]
RewriteCond %{REMOTE_ADDR} !90\.100\.100\.100
RewriteRule .* https://example.ee/hooldus.html [L]
PHP käivitamise keelamine ennetamaks turvaprobleeme
Options -ExecCGI
RemoveType .php .php3 .phtml .inc
RemoveHandler .php .php3 .phtml .inc
<FilesMatch "\.(?i:php|php3|phtml|inc)$">
Require all denied
</FilesMatch>
<IfModule mod_php7.c>
php_flag engine off
</IfModule>
Rewrite proxy kasutamine
Näites kuvatakse sinudomeen.ee/proxy/ alamkataloogi sisu automaatselt example.com domeenilt.
RewriteRule "^proxy/(.*)$" "http://www.example.com/$1" [P,L]
NB! Proxy päringuid saab teha vaid HTTP ühendustele ja iga päringu kohta läheb ka veebiserveri error logisse teavitus.
Pakkimise keelamine teatud päringutelt
Vaikimisi on kõik veebiserveri poolt serveeritud vastused pakitud. See aga võib segada töid, mis võtavad kaua aega (näiteks toodete import). Järgnev seadistus keelab pakkimisi kõikidelt /import URL-ga algavatelt päringutelt.