used to redirect user directory requests to external URLs.</p>
<example>
- UserDir http://www.foo.com/users/*/
+ UserDir http://example.org/users/*/
</example>
<p>The above example will redirect a request for
<code>http://example.com/~bob/abc.html</code> to
- <code>http://www.foo.com/users/bob/abc.html</code>.</p>
+ <code>http://example.org/users/bob/abc.html</code>.</p>
</section>
<section id="enable">
the second example will list the ten last denied clients, for example:</p>
<example>
- [Thu Jul 11 17:18:39 2002] [error] [client foo.bar.com] client denied
+ [Thu Jul 11 17:18:39 2002] [error] [client foo.example.com] client denied
by server configuration: /usr/local/apache/htdocs/.htpasswd
</example>
would have seen something similar to:</p>
<example>
- foo.bar.com - - [12/Jul/2002:01:59:13 +0200] "GET /.htpasswd HTTP/1.1"
+ foo.example.com - - [12/Jul/2002:01:59:13 +0200] "GET /.htpasswd HTTP/1.1"
</example>
<p>in your <a href="../logs.html#accesslog">Access Log</a>. This means
functionality is especially useful when combined with the
<directive module="core">SetHandler</directive>
directive. For example, to enable status requests, but allow them
- only from browsers at <code>foo.com</code>, you might use:</p>
+ only from browsers at <code>example.com</code>, you might use:</p>
<example>
<Location /status><br />
SetHandler server-status<br />
Order Deny,Allow<br />
Deny from all<br />
- Allow from .foo.com<br />
+ Allow from .example.com<br />
</indent>
</Location>
</example>
<example><title>Example</title>
<VirtualHost 10.1.2.3><br />
<indent>
- ServerAdmin webmaster@host.foo.com<br />
- DocumentRoot /www/docs/host.foo.com<br />
- ServerName host.foo.com<br />
- ErrorLog logs/host.foo.com-error_log<br />
- TransferLog logs/host.foo.com-access_log<br />
+ ServerAdmin webmaster@host.example.com<br />
+ DocumentRoot /www/docs/host.example.com<br />
+ ServerName host.example.com<br />
+ ErrorLog logs/host.example.com-error_log<br />
+ TransferLog logs/host.example.com-access_log<br />
</indent>
</VirtualHost>
</example>
a User Principle Name (UPN) can be added to a user's entry in the
directory. This UPN usually takes the form of the user's account
name, followed by the domain components of the particular domain,
- for example <em>somebody@nz.somedomain.com</em>.</p>
+ for example <em>somebody@nz.example.com</em>.</p>
<p>You may wish to configure the <module>mod_authnz_ldap</module>
module to authenticate users present in any of the domains making up
the Active Directory forest. In this way both
- <em>somebody@nz.somedomain.com</em> and <em>someone@au.somedomain.com</em>
+ <em>somebody@nz.example.com</em> and <em>someone@au.example.com</em>
can be authenticated using the same query at the same time.</p>
<p>To make this practical, Active Directory supports the concept of
an empty search root, like so:</p>
<example>
-AuthLDAPBindDN apache@somedomain.com<br />
+AuthLDAPBindDN apache@example.com<br />
AuthLDAPBindPassword password<br />
AuthLDAPURL ldap://10.0.0.1:3268/?userPrincipalName?sub
</example>
<p>Users will need to enter their User Principal Name as a login, in
- the form <em>somebody@nz.somedomain.com</em>.</p>
+ the form <em>somebody@nz.example.com</em>.</p>
</section>
generated:</p>
<example>
- <a href="http://foo.com/"><var>Menu text</var></a>
+ <a href="http://example.com/"><var>Menu text</var></a>
</example>
<p>If no quoted text is present, the name of the link will be
used as the text:</p>
<example>
- <a href="http://foo.com/">http://foo.com</a>
+ <a href="http://example.com/">http://example.com</a>
</example>
<p>If you want to use double quotes within this text, you have to
base referer<br />
poly map "Could I have a menu, please?" 0,0 0,10 10,10 10,0<br />
rect .. 0,0 77,27 "the directory of the referer"<br />
- circle http://www.inetnebr.com/lincoln/feedback/ 195,0 305,27<br />
+ circle http://www.inetnebr.example.com/lincoln/feedback/ 195,0 305,27<br />
rect another_file "in same directory as referer" 306,0 419,27<br />
- point http://www.zyzzyva.com/ 100,100<br />
- point http://www.tripod.com/ 200,200<br />
- rect mailto:nate@tripod.com 100,150 200,0 "Bugs?"<br />
+ point http://www.zyzzyva.example.com/ 100,100<br />
+ point http://www.tripod.example.com/ 200,200<br />
+ rect mailto:nate@tripod.example.com 100,150 200,0 "Bugs?"<br />
</example>
</section>
<directive module="mod_proxy">ProxyRemote</directive> proxy server(s).</p>
<example><title>Example</title>
- ProxyRemote * http://firewall.mycompany.com:81<br />
- NoProxy .mycompany.com 192.168.112.0/21
+ ProxyRemote * http://firewall.example.com:81<br />
+ NoProxy .example.com 192.168.112.0/21
</example>
<p>The <var>host</var> arguments to the <directive>NoProxy</directive>
<note><title>Note</title>
<p>Domain name comparisons are done without regard to the case, and
<var>Domain</var>s are always assumed to be anchored in the root of the
- DNS tree, therefore two domains <code>.MyDomain.com</code> and
- <code>.mydomain.com.</code> (note the trailing period) are considered
+ DNS tree, therefore two domains <code>.ExAmple.com</code> and
+ <code>.example.com.</code> (note the trailing period) are considered
equal. Since a domain comparison does not involve a DNS lookup, it is much
more efficient than subnet comparison.</p>
</note></dd>
of hosts with different <var><a href="#ipaddr">IPAddr</a></var>s).</p>
<example><title>Examples</title>
- prep.ai.mit.edu<br />
+ prep.ai.example.com<br />
www.apache.org
</example>
link.</p>
<p><var>Hostname</var> comparisons are done without regard to the case,
and <var>Hostname</var>s are always assumed to be anchored in the root
- of the DNS tree, therefore two hosts <code>WWW.MyDomain.com</code>
- and <code>www.mydomain.com.</code> (note the trailing period) are
+ of the DNS tree, therefore two hosts <code>WWW.ExAmple.com</code>
+ and <code>www.example.com.</code> (note the trailing period) are
considered equal.</p>
</note></dd>
</dl>
will be generated.</p>
<example><title>Example</title>
- ProxyRemote * http://firewall.mycompany.com:81<br />
- NoProxy .mycompany.com 192.168.112.0/21<br />
- ProxyDomain .mycompany.com
+ ProxyRemote * http://firewall.example.com:81<br />
+ NoProxy .example.com 192.168.112.0/21<br />
+ ProxyDomain .example.com
</example>
</usage>
</directivesynopsis>
<module>mod_status</module> and <module>mod_proxy_balancer</module>
have to be present in the server.</p>
- <p>To enable load balancer management for browsers from the foo.com
+ <p>To enable load balancer management for browsers from the example.com
domain add this code to your <code>httpd.conf</code>
configuration file</p>
<example>
<br />
Order Deny,Allow<br />
Deny from all<br />
- Allow from .foo.com<br />
+ Allow from .example.com<br />
</Location>
</example>
<section id="enable">
<title>Enabling Status Support</title>
- <p>To enable status reports only for browsers from the foo.com
+ <p>To enable status reports only for browsers from the example.com
domain add this code to your <code>httpd.conf</code>
configuration file</p>
<example>
<br />
Order Deny,Allow<br />
Deny from all<br />
- Allow from .foo.com<br />
+ Allow from .example.com<br />
</Location>
</example>
<code>Userdir</code> directive, the argument is treated as a
filename pattern, and is used to turn the name into a directory
specification. A request for
- <code>http://www.foo.com/~bob/one/two.html</code> will be
+ <code>http://www.example.com/~bob/one/two.html</code> will be
translated to:</p>
<table>
<table>
<tr><th>UserDir directive used</th>
<th>Translated path</th></tr>
-<tr><td>UserDir http://www.foo.com/users</td><td>http://www.foo.com/users/bob/one/two.html</td></tr>
+<tr><td>UserDir http://www.example.com/users</td><td>http://www.example.com/users/bob/one/two.html</td></tr>
<tr><td>UserDir
-http://www.foo.com/*/usr</td><td>http://www.foo.com/bob/usr/one/two.html</td></tr>
+http://www.example.com/*/usr</td><td>http://www.example.com/bob/usr/one/two.html</td></tr>
<tr><td>UserDir
-http://www.foo.com/~*/</td><td>http://www.foo.com/~bob/one/two.html</td></tr>
+http://www.example.com/~*/</td><td>http://www.example.com/~bob/one/two.html</td></tr>
</table>
<note>
<p>It is also possible to specify alternative user directories.
If you use a command like:</p>
<example>
-Userdir public_html /usr/web http://www.foo.com/
+Userdir public_html /usr/web http://www.example.com/
</example>
-<p>With a request for http://www.foo.com/~bob/one/two.html, will try to
+<p>With a request for http://www.example.com/~bob/one/two.html, will try to
find the page at ~bob/public_html/one/two.html first, then
/usr/web/bob/one/two.html, and finally it will send a redirect
-to http://www.foo.com/bob/one/two.html.</p>
+to http://www.example.com/bob/one/two.html.</p>
<p>If you add a redirect, it must be the last alternative in the list.
Apache cannot determine if the redirect succeeded or not, so if you have
the redirect earlier in the list, that will always be the alternative
<p>The domain string <strong>must</strong> begin with a dot, and
<strong>must</strong> include at least one embedded dot. That is,
- <code>.foo.com</code> is legal, but <code>foo.bar.com</code> and
+ <code>.example.com</code> is legal, but <code>foo.example.com</code> and
<code>.com</code> are not.</p>
<note>Most browsers in use today will not allow cookies to be set
<dd>
<p>Suppose we want to load balance the traffic to
- <code>www.foo.com</code> over <code>www[0-5].foo.com</code>
+ <code>www.example.com</code> over <code>www[0-5].example.com</code>
(a total of 6 servers). How can this be done?</p>
</dd>
<p>The simplest method for load-balancing is to use
DNS round-robin.
- Here you just configure <code>www[0-9].foo.com</code>
+ Here you just configure <code>www[0-9].example.com</code>
as usual in your DNS with A (address) records, e.g.,</p>
<example><pre>
www IN A 1.2.3.5
</pre></example>
- <p>Now when <code>www.foo.com</code> gets
+ <p>Now when <code>www.example.com</code> gets
resolved, <code>BIND</code> gives out <code>www0-www5</code>
- but in a permutated (rotated) order every time.
This way the clients are spread over the various
servers. But notice that this is not a perfect load
balancing scheme, because DNS resolutions are
cached by clients and other nameservers, so
- once a client has resolved <code>www.foo.com</code>
- to a particular <code>wwwN.foo.com</code>, all its
+ once a client has resolved <code>www.example.com</code>
+ to a particular <code>wwwN.example.com</code>, all its
subsequent requests will continue to go to the same
IP (and thus a single server), rather than being
distributed across the other available servers. But the
<p>In this variant we use <module>mod_rewrite</module>
and its proxy throughput feature. First we dedicate
- <code>www0.foo.com</code> to be actually
- <code>www.foo.com</code> by using a single</p>
+ <code>www0.example.com</code> to be actually
+ <code>www.example.com</code> by using a single</p>
<example><pre>
-www IN CNAME www0.foo.com.
+www IN CNAME www0.example.com.
</pre></example>
<p>entry in the DNS. Then we convert
- <code>www0.foo.com</code> to a proxy-only server,
+ <code>www0.example.com</code> to a proxy-only server,
i.e., we configure this machine so all arriving URLs
are simply passed through its internal proxy to one of
the 5 other servers (<code>www1-www5</code>). To
</pre></example>
<note>A last notice: Why is this useful? Seems like
- <code>www0.foo.com</code> still is overloaded? The
+ <code>www0.example.com</code> still is overloaded? The
answer is yes, it is overloaded, but with plain proxy
throughput requests, only! All SSI, CGI, ePerl, etc.
processing is handled done on the other machines.