diff options
author | Ville Skytt? <ville.skytta@iki.fi> | 2011-03-13 12:37:00 +0200 |
---|---|---|
committer | Ville Skytt? <ville.skytta@iki.fi> | 2011-03-13 12:37:00 +0200 |
commit | 6031a4f1b746f45def64088de614fe3c1b5f10e8 (patch) | |
tree | 0d6c3ff54dc06598b8269bcd192e7825358fb1de | |
parent | 4c83a6af75f8bb94c17dddf2b08dc304bf88a4c9 (diff) | |
download | markup-validator-6031a4f1b746f45def64088de614fe3c1b5f10e8.zip markup-validator-6031a4f1b746f45def64088de614fe3c1b5f10e8.tar.gz markup-validator-6031a4f1b746f45def64088de614fe3c1b5f10e8.tar.bz2 |
Do uri=referer redirects in httpd.conf if mod_rewrite is available.
-rw-r--r-- | httpd/conf/httpd.conf | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/httpd/conf/httpd.conf b/httpd/conf/httpd.conf index a7b6699..b426c33 100644 --- a/httpd/conf/httpd.conf +++ b/httpd/conf/httpd.conf @@ -11,11 +11,22 @@ # To run the validator without mod_perl 2.x even if it is loaded, comment # out the "IfDefine MODPERL2" sections below. -# Legacy: support /check/referer by redirecting to check?uri=referer +# Referer dependent redirects. <IfModule mod_rewrite.c> RewriteEngine On -RewriteRule ^(/+w3c-validator/+check)/+referr?er\b $1?uri=referer [R=301,QSA,L] + +# check/referer is deprecated in favor of check?uri=referer +RewriteRule ^(/+w3c-validator/+check)/+referr?er$ $1?uri=referer [R=301,QSA,L] + +# If Referer is present, redirect check?uri=referer to check?uri=$Referer +RewriteRule . - [E=have_uri_referer:false] +RewriteCond %{QUERY_STRING} (^|.*?[;&])ur[il]=referer([;&].*|$) +RewriteRule . - [E=qs1:%1,E=qs2:%2,E=have_uri_referer:true] +RewriteCond %{ENV:have_uri_referer} =true +RewriteCond %{HTTP_REFERER} ^(.+)$ +RewriteRule ^/+w3c-validator/+check$ \ + /w3c-validator/check?%{ENV:qs1}uri=%1%{ENV:qs2} [R,B,NE,L] </IfModule> # Tell httpd that check and sendfeedback.pl are CGI scripts. |