- From: Dan Connolly <connolly@w3.org>
- Date: Mon, 6 Sep 1999 23:08:09 -0400 (EDT)
- To: Brian Gilkison <gilkison@one.net>
- CC: www-validator@w3.org
Brian Gilkison wrote: > > Dan, > > The referrer CGI won't work as a bookmark In its present form, that's true. But it would be a Simple Matter of Programming to get it to work as expected (by me, at least). > -- only works correctly if it > appears as a link in your "live" documents. Try changing your bookmark to a > URL in the format of: > > http://validator.w3.org/check?uri=http://yourservernamehere/yourpathhere/ I want the service to do that for me. The code is right here: ============== excerpt from: http://dev.w3.org/cgi-bin/cvsweb/validator/httpd/cgi-bin/check?rev=1.31&content-type=text/x-cvsweb-markup my $pair; foreach $pair (split(/[&;,]/, $parameters)) { # this referer handling probably needs fixing to handle strange cases # (possibly tied to the explanation given when connections fail; # the referer could be on an intranet, etc.) if ( $pair eq "/referer" && $ENV{HTTP_REFERER} =~ m,^http://, ) { $FORM{uri} = $ENV{HTTP_REFERER}; next; } ============== In stead of doing a sort of "internal redirect" by setting $FORM{uri}, it should return a 304 redirect. The code to do a redirect is already there, too: redirect_to_home_page . Just adapt that to: sub redirect_to_check { my($checkee) = @_; $checkee == &url_quot($checkee); # I assume there's an url_quote # routine handy; it's gotta be # in LWP, if nowhere else. print "Status: 302 Found\n"; print "Content-Type: text/html\n"; print "Location: http://validator.w3.org/check?uri=$checkee\n\n"; print "<title>Found</title>\n"; print "<p>\n"; print " Please see <a href=\"http://validator.w3.org/check?uri=$checkee\">the results of checking your page.</a>\n"; print "</p>\n"; &clean_up_and_exit; } > -- > Dan Connolly, W3C > http://www.w3.org/People/Connolly/
Received on Monday, 6 September 1999 23:09:09 UTC