Commit 9dc1b108 authored by Ken Coar's avatar Ken Coar
Browse files

Correcting some HTML boo-boos (not subject to style debates).

	It has been said, and verily it is true, that weblint rocks.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@80132 13f79535-47bb-0310-9956-ffa450edef68
parent dc7bf8cc
Loading
Loading
Loading
Loading
+10 −11
Changes for docs/manual/misc/custom_errordocs.html: 10 added lines, 11 removed lines.
Original line number Diff line number Diff line
@@ -12,9 +12,7 @@
 VLINK="#000080"
 ALINK="#FF0000"
>
<DIV ALIGN="CENTER">
 <IMG SRC="../images/sub.gif" ALT="[APACHE DOCUMENTATION]">
</DIV>
<!--#include virtual="header.html" -->

<H1 ALIGN="CENTER">Using XSSI and <SAMP>ErrorDocument</SAMP> to configure
customized international server error responses</H1>
@@ -30,7 +28,7 @@ customized international server error responses</H1>
 <LI><A HREF="#listings">HTML listing of the discussed example</A>
</UL>
<HR>
<A NAME="intro"><H2>Introduction</H2></A>
<H2><A NAME="intro">Introduction</A></H2>
This document describes an easy way to provide your apache WWW server
with a set of customized error messages which take advantage of
<A HREF="../content-negotiation.html">Content Negotiation</A>
@@ -76,14 +74,15 @@ For this hypothetic server, we assume that all error messages...
<P>
An example of a "document not found" message for a german client might
look like this:<BR>
<IMG SRC="../images/custom_errordocs.gif"><BR>
<IMG SRC="../images/custom_errordocs.gif"
 ALT="[Needs graphics capability to display]"><BR>
All links in the document as well as links to the server's administrator
mail address, and even the name and port of the serving virtual host
are inserted in the error document at "run-time", i.e., when the error
actually occurs.
</P>

<A NAME="createdir"><H2>Creating an ErrorDocument directory</H2></A>
<H2><A NAME="createdir">Creating an ErrorDocument directory</A></H2>

For this concept to work as easily as possible, we must take advantage
of as much server support as we can get:
@@ -159,7 +158,7 @@ The directory for the error messages (here:
appropriate permissions (readable and executable by the server uid or gid, 
only writable for the administrator).

<A NAME="docnames"><H3>Naming the individual error document files</H3></A>
<H3><A NAME="docnames">Naming the individual error document files</A></H3>

By defining the <SAMP>MultiViews</SAMP> option, the server was told to
automatically scan the directory for matching variants (looking at language
@@ -186,7 +185,7 @@ the configured error documents):
     variant (<A HREF="#fallback">see below</A>).
</UL>

<A NAME="headfoot"><H3>The common header and footer files</H3></A>
<H3><A NAME="headfoot">The common header and footer files</A></H3>

By putting as much layout information in two special "include files", 
the error documents can be reduced to a bare minimum.
@@ -229,7 +228,7 @@ See <A HREF="#listings">the listings below</A> to see an actual HTML
implementation of the discussed example.


<A NAME="createdocs"><H3>Creating ErrorDocuments in different languages</H3></A>
<H3><A NAME="createdocs">Creating ErrorDocuments in different languages</A></H3>

After all this preparation work, little remains to be said about the
actual documents. They all share a simple common structure:
@@ -243,7 +242,7 @@ In the <A HREF="#listings">listings section</A>, you can see an example
of a [400 Bad Request] error document. Documents as simple as that
certainly cause no problems to translate or expand.

<A NAME="fallback"><H3>The fallback language</H3></A>
<H3><A NAME="fallback">The fallback language</A></H3>

Do we need a special handling for languages other than those we have
translations for? We did set the LanguagePriority, didn't we?!
@@ -276,7 +275,7 @@ A simple shell script to do it (execute within the errordocs/ dir):
<P>
</P>

<A NAME="listings"><H2>HTML listing of the discussed example</H2></A>
<H2><A NAME="listings">HTML listing of the discussed example</A></H2>

So, to summarize our example, here's the complete listing of the
<SAMP>400.shtml.en</SAMP> document. You will notice that it contains
+11 −11
Changes for docs/manual/misc/known_client_problems.html: 11 added lines, 11 removed lines.
Original line number Diff line number Diff line
@@ -40,7 +40,7 @@ The admin typically controls which are set, and for which clients, by using
<A HREF="../mod/mod_browser.html">mod_browser</A>.  Unless otherwise
noted all of these workarounds exist in versions 1.2 and later.

<A name="trailing-crlf"><H3>Trailing CRLF on POSTs</H3></A>
<H3><A name="trailing-crlf">Trailing CRLF on POSTs</A></H3>

<P>This is a legacy issue.  The CERN webserver required <CODE>POST</CODE>
data to have an extra <CODE>CRLF</CODE> following it.  Thus many
@@ -49,7 +49,7 @@ is not included in the <CODE>Content-Length</CODE> of the request.
Apache works around this problem by eating any empty lines which
appear before a request.

<A name="broken-keepalive"><H3>Broken keepalive</H3></A>
<H3><A name="broken-keepalive">Broken keepalive</A></H3>

<P>Various clients have had broken implementations of <EM>keepalive</EM>
(persistent connections).  In particular the Windows versions of
@@ -72,11 +72,11 @@ patch</A> to version 1.2.1. Then add this to your config:
BrowserMatch "MSIE 4\.0b2;" nokeepalive
</CODE></BLOCKQUOTE>

<A name="force-response-1.0"><H3>Incorrect interpretation of <CODE>HTTP/1.1</CODE> in response</H3></A>
<H3><A name="force-response-1.0">Incorrect interpretation of <CODE>HTTP/1.1</CODE> in response</A></H3>

<P>To quote from section 3.1 of RFC1945:
<BLOCKQUOTE>
HTTP uses a "<MAJOR>.<MINOR>" numbering scheme to indicate versions
HTTP uses a "&lt;MAJOR&gt;.&lt;MINOR&gt;" numbering scheme to indicate versions
of the protocol. The protocol versioning policy is intended to allow
the sender to indicate the format of a message and its capacity for
understanding further HTTP communication, rather than the features
@@ -112,7 +112,7 @@ workaround is still:
BrowserMatch "RealPlayer 4.0" force-response-1.0
</CODE></BLOCKQUOTE>

<A name="msie4.0b2"><H3>Requests use HTTP/1.1 but responses must be in HTTP/1.0</H3></A>
<H3><A name="msie4.0b2">Requests use HTTP/1.1 but responses must be in HTTP/1.0</A></H3>

<P>MSIE 4.0b2 has this problem.  Its Java VM makes requests in HTTP/1.1
format but the responses must be in HTTP/1.0 format (in particular, it
@@ -125,7 +125,7 @@ This workaround is available in 1.2.2, and in a
<A HREF="http://www.apache.org/dist/patches/apply_to_1.2.1/msie_4_0b2_fixes.patch">patch
</A> against 1.2.1.

<A name="257th-byte"><H3>Boundary problems with header parsing</H3></A>
<H3><A name="257th-byte">Boundary problems with header parsing</A></H3>

<P>All versions of Navigator from 2.0 through 4.0b2 (and possibly later)
have a problem if the trailing CRLF of the response header starts at
@@ -135,7 +135,7 @@ on all responses. The workaround is to detect when this condition would
occur in a response and add extra padding to the header to push the
trailing CRLF past offset 258 of the response.

<A name="boundary-string"><H3>Multipart responses and Quoted Boundary Strings</H3></A>
<H3><A name="boundary-string">Multipart responses and Quoted Boundary Strings</A></H3>

<P>On multipart responses some clients will not accept quotes (")
around the boundary string.  The MIME standard recommends that
@@ -144,7 +144,7 @@ on one of the examples in RFC2068, which does not include quotes.
Apache does not include quotes on its boundary strings to workaround
this problem.

<A name="byterange-requests"><H3>Byterange requests</H3></A>
<H3><A name="byterange-requests">Byterange requests</A></H3>

<P>A byterange request is used when the client wishes to retrieve a
portion of an object, not necessarily the entire object.  There
@@ -185,7 +185,7 @@ with MSIE 3 is actually due to the Acrobat plugin, not due to the browser.
version 3.01 is used with it, it will not properly understand byteranges.
The user must upgrade their Acrobat reader to 3.01.

<A name="cookie-merge"><H3><CODE>Set-Cookie</CODE> header is unmergeable</H3></A>
<H3><A name="cookie-merge"><CODE>Set-Cookie</CODE> header is unmergeable</A></H3>

<P>The HTTP specifications say that it is legal to merge headers with
duplicate names into one (separated by semicolon).  Some browsers
@@ -194,7 +194,7 @@ that support Cookies don't like merged headers and prefer that each
headers returned by a CGI, Apache will explicitly avoid merging any
<CODE>Set-Cookie</CODE> headers.

<A name="gif89-expires"><H3><CODE>Expires</CODE> headers and GIF89A animations</H3></A>
<H3><A name="gif89-expires"><CODE>Expires</CODE> headers and GIF89A animations</A></H3>

<P>Navigator versions 2 through 4 will erroneously re-request
GIF89A animations on each loop of the animation if the first
@@ -205,7 +205,7 @@ HREF="http://www.arctic.org/~dgaudet/patches/apache-1.2-gif89-expires-hack.patch
and for <A
HREF="http://www.arctic.org/~dgaudet/patches/apache-1.3-gif89-expires-hack.patch">1.3</A>.

<A name="no-content-length"><H3><CODE>POST</CODE> without <CODE>Content-Length</CODE></H3></A>
<H3><A name="no-content-length"><CODE>POST</CODE> without <CODE>Content-Length</CODE></A></H3>

<P>In certain situations Navigator 3.01 through 3.03 appear to incorrectly
issue a POST without the request body.  There is no
+2 −2
Changes for docs/manual/misc/perf-tuning.html: 2 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -327,8 +327,8 @@ the inner loop. The loop looks like this (differences highlighted):
    }
</PRE></BLOCKQUOTE>

<A name="serialize"></A>
The functions <CODE>accept_mutex_on</CODE> and <CODE>accept_mutex_off</CODE>
<A name="serialize">The functions</A>
<CODE>accept_mutex_on</CODE> and <CODE>accept_mutex_off</CODE>
implement a mutual exclusion semaphore.  Only one child can have the
mutex at any time.  There are several choices for implementing these
mutexes.  The choice is defined in <CODE>src/conf.h</CODE> (pre-1.3) or
+1 −2
Changes for docs/manual/misc/security_tips.html: 1 added line, 2 removed lines.
Original line number Diff line number Diff line
@@ -22,8 +22,7 @@ the suggestions will be general, others specific to Apache.

<HR>

<A name="serverroot">
<H2>Permissions on ServerRoot Directories</H2></A>
<H2><A name="serverroot">Permissions on ServerRoot Directories</A></H2>
<P>In typical operation, Apache is started by the root
user, and it switches to the user defined by the <A
HREF="../mod/core.html#user"><STRONG>User</STRONG></A> directive to serve hits.
+19 −24
Changes for docs/manual/mod/mod_rewrite.html: 19 added lines, 24 removed lines.
Original line number Diff line number Diff line
@@ -80,12 +80,10 @@ gifted exclusively to the The Apache Group in July 1997 by


<CENTER>
<A name="Configuration">
<H1>Configuration Directives</H1>
</A>
<H1><A NAME="Configuration">Configuration Directives</A></H1>
</CENTER>

<A name="RewriteEngine"><H3>RewriteEngine</H3></A>
<H3><A NAME="RewriteEngine">RewriteEngine</A></H3>
<A
 HREF="directive-dict.html#Syntax"
 REL="Help"
@@ -119,7 +117,7 @@ HREF="#RewriteOptions">RewriteOptions inherit</A> is enabled.
<hr noshade size=1>
<P>

<A name="RewriteOptions"><H3>RewriteOptions</H3></A>
<H3><A NAME="RewriteOptions">RewriteOptions</A></H3>
<A
 HREF="directive-dict.html#Syntax"
 REL="Help"
@@ -151,7 +149,7 @@ strings can be one of the following:
<hr noshade size=1>
<P>

<A name="RewriteLog"><H3>RewriteLog</H3></A>
<H3><A NAME="RewriteLog">RewriteLog</A></H3>
<A
 HREF="directive-dict.html#Syntax"
 REL="Help"
@@ -209,7 +207,7 @@ RewriteLog "/usr/local/var/apache/logs/rewrite.log"
<hr noshade size=1>
<P>

<A name="RewriteLogLevel"><H3>RewriteLogLevel</H3></A>
<H3><A NAME="RewriteLogLevel">RewriteLogLevel</A></H3>
<A
 HREF="directive-dict.html#Syntax"
 REL="Help"
@@ -254,7 +252,7 @@ RewriteLogLevel 3
<hr noshade size=1>
<P>

<A name="RewriteMap"><H3>RewriteMap</H3></A>
<H3><A NAME="RewriteMap">RewriteMap</A></H3>
<A
 HREF="directive-dict.html#Syntax"
 REL="Help"
@@ -274,7 +272,7 @@ which can be used inside rule substitution strings by the mapping-functions
to insert/substitute fields through a key lookup.
<P>

The <A name="mapfunc"><EM>Mapname</EM></A> is the name of the map and will
The <A NAME="mapfunc"><EM>Mapname</EM></A> is the name of the map and will
be used to specify a mapping-function for the substitution strings of a
rewriting rule via

@@ -405,7 +403,7 @@ only happens once!
<hr noshade size=1>
<P>

<A name="RewriteBase"><H3>RewriteBase</H3></A>
<H3><A NAME="RewriteBase">RewriteBase</A></H3>
<A
 HREF="directive-dict.html#Syntax"
 REL="Help"
@@ -517,7 +515,7 @@ sure the design and implementation is correct.
<hr noshade size=1>
<P>

<A name="RewriteCond"><H3>RewriteCond</H3></A>
<H3><A NAME="RewriteCond">RewriteCond</A></H3>
<A
 HREF="directive-dict.html#Syntax"
 REL="Help"
@@ -550,7 +548,8 @@ expanded constructs in addition to plain text:
<TT>$N</TT>
</STRONG></BLOCKQUOTE>

(1 <= N <= 9) which provide access to the grouped parts (parenthesis!) of the
(1 &lt;= N &lt;= 9) which provide access to the grouped parts (parenthesis!)
of the
pattern from the corresponding <TT>RewriteRule</TT> directive (the one
following the current bunch of <TT>RewriteCond</TT> directives).

@@ -561,7 +560,7 @@ following the current bunch of <TT>RewriteCond</TT> directives).
<TT>%N</TT>
</STRONG></BLOCKQUOTE>

(1 <= N <= 9) which provide access to the grouped parts (parenthesis!) of the
(1 &lt;= N &lt;= 9) which provide access to the grouped parts (parenthesis!) of the
pattern from the last matched <TT>RewriteCond</TT> directive in the current
bunch of conditions.

@@ -822,7 +821,7 @@ use any other browser you get the standard homepage.
<hr noshade size=1>
<P>

<A name="RewriteRule"><H3>RewriteRule</H3></A>
<H3><A NAME="RewriteRule">RewriteRule</A></H3>
<A
 HREF="directive-dict.html#Syntax"
 REL="Help"
@@ -844,8 +843,8 @@ rewriting rule. The <STRONG>definition order</STRONG> of these rules is
run-time.

<P>
<A name="patterns"><EM>Pattern</EM></A> can be (for Apache 1.1.x a System
V8 and for Apache 1.2.x a POSIX) <A name="regexp">regular expression</A>
<A NAME="patterns"><EM>Pattern</EM></A> can be (for Apache 1.1.x a System
V8 and for Apache 1.2.x a POSIX) <A NAME="regexp">regular expression</A>
which gets applied to the current URL. Here ``current'' means the value of the
URL when this rule gets applied. This may not be the original requested
URL, because there could be any number of rules before which already matched
@@ -897,7 +896,7 @@ substitution string!
</TABLE>

<P>
<A name="rhs"><EM>Substitution</EM></A> of a rewriting rule is the string
<A NAME="rhs"><EM>Substitution</EM></A> of a rewriting rule is the string
which is substituted for (or replaces) the original URL for which
<EM>Pattern</EM> matched.  Beside plain text you can use

@@ -966,7 +965,7 @@ as the third argument to the <TT>RewriteRule</TT> directive. <EM>Flags</EM> is a
comma-separated list of the following flags:

<UL>
<LI>'<STRONG><CODE>redirect|R</CODE>[=<EM>code</EM>]</STRONG>' (force <A name="redirect"><STRONG>r</STRONG>edirect</A>)<BR>
<LI>'<STRONG><CODE>redirect|R</CODE>[=<EM>code</EM>]</STRONG>' (force <A NAME="redirect"><STRONG>r</STRONG>edirect</A>)<BR>
    Prefix <EM>Substitution</EM>
    with <CODE>http://thishost[:thisport]/</CODE> (which makes the new URL a URI) to
    force a external redirection. If no <EM>code</EM> is given a HTTP response
@@ -1287,14 +1286,10 @@ RewriteRule ^/([^/]+)/~([^/]+)/(.*)$ /u/${real-to-user:$2|nobody}/$3.$1
<!--/%hypertext -->

<CENTER>
<A name="Additional">
<H1>Additional Features</H1>
</A>
<H1><A NAME="Additional">Additional Features</A></H1>
</CENTER>

<A name="EnvVar">
<H2>Environment Variables</H2>
</A>
<H2><A NAME="EnvVar">Environment Variables</A></H2>

This module keeps track of two additional (non-standard) CGI/SSI environment
variables named <TT>SCRIPT_URL</TT> and <TT>SCRIPT_URI</TT>. These contain
Loading