0 valutazioniIl 0% ha trovato utile questo documento (0 voti)
60 visualizzazioni1 pagina
This document provides examples and explanations of mod_rewrite syntax and flags for redirecting URLs and blocking referrer spam. Regular expressions are used to match patterns in URLs and referrers. RewriteRule directives specify the matching patterns and replacement URLs, and RewriteCond directives set conditions that must be met. Flags like R, L, and NC control how redirects are handled.
This document provides examples and explanations of mod_rewrite syntax and flags for redirecting URLs and blocking referrer spam. Regular expressions are used to match patterns in URLs and referrers. RewriteRule directives specify the matching patterns and replacement URLs, and RewriteCond directives set conditions that must be met. Flags like R, L, and NC control how redirects are handled.
This document provides examples and explanations of mod_rewrite syntax and flags for redirecting URLs and blocking referrer spam. Regular expressions are used to match patterns in URLs and referrers. RewriteRule directives specify the matching patterns and replacement URLs, and RewriteCond directives set conditions that must be met. Flags like R, L, and NC control how redirects are handled.
$ End of string RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [NC] . Any single character RewriteRule ^(.*)$ http://www.domain2.com/$1 [R=301,L] (a|b) a or b (...) Group section Example: Page moved temporarily [abc] Item in range (a, b or c) [^abc] Not in range (not a, b or c) # domain.com/page.htm to domain.com/new_page.htm \s White space RewriteRule ^page.htm$ new_page.htm [R,NC,L] a? Zero or one of a a* Zero or more of a Example: Nice looking URLs (no querystring) a*? Zero or more of a, ungreedy a+ One or more of a # domain.com/category-name/ to domain.com/categories.php?name=category-name a+? One or more of a, ungreedy RewriteRule ^([A-Za-z0-9-]+)/?$ categories.php?name=$1 [L] a{3} Exactly 3 of a a{3,} 3 or more of a Example: Block Referrer Spam (where referring URL contains "viagra" or "xxx" ) a{3,6} 3 to 6 of a a{3,6}? 3 to 6 of a, ungreedy RewriteCond %{HTTP_REFERER} (viagra) [NC,OR] !(pattern) "Not" prefix. Apply rule if RewriteCond %{HTTP_REFERER} (xxx) [NC] pattern does not match. RewriteRule .* - [F]
RewriteRule Flags Server Variables: HTTP Headers Server Variables: Time
R[=code] Redirect to new URL, with %{HTTP_USER_AGENT} %{TIME_YEAR}
optional code (see below). %{HTTP_REFERER} %{TIME_MON} F Forbidden (sends 403 %{HTTP_COOKIE} %{TIME_DAY} header) %{HTTP_FORWARDED} %{TIME_HOUR} G Gone (no longer exists) %{HTTP_HOST} %{TIME_MIN} P Proxy %{HTTP_PROXY_CONNECTION} %{TIME_SEC} L Last Rule %{HTTP_ACCEPT} %{TIME_WDAY} N Next (i.e. restart rules) %{TIME} C Chain Server Variables: Request T=mime-type Set Mime Type Server Variables: Special NS Skip if internal sub-request %{REMOTE_ADDR} NC Case insensitive %{REMOTE_HOST} %{API_VERSION} QSA Append query string %{REMOTE_USER} %{THE_REQUEST} NE Do not escape output %{REMOTE_IDENT} %{REQUEST_URI} PT Pass through %{REQUEST_METHOD} %{REQUEST_FILENAME} S=x Skip next x rules %{SCRIPT_FILENAME} %{IS_SUBREQ} E=var:value Set environmental variable %{PATH_INFO} "var" to "value". %{QUERY_STRING} Directives %{AUTH_TYPE} RewriteEngine RewriteCond Flags RewriteOptions Server Variables: HTTP Headers NC Case insensitive RewriteLog OR Combines rules with logical %{DOCUMENT_ROOT} RewriteLogLevel "or" instead of "and". %{SERVER_ADMIN} RewriteLock %{SERVER_NAME} RewriteMap %{SERVER_ADDR} RewriteBase Redirection Header Codes %{SERVER_PORT} RewriteCond 301 Moved permanently %{SERVER_PROTOCOL} RewriteRule 302 Moved temporarily %{SERVER_SOFTWARE} 403 Forbidden Available free from 404 Not Found AddedBytes.com 410 Gone