mirror of
https://github.com/apache/httpd.git
synced 2025-08-11 13:22:44 +03:00
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93491 13f79535-47bb-0310-9956-ffa450edef68
112 lines
4.0 KiB
HTML
112 lines
4.0 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta name="generator" content="HTML Tidy, see www.w3.org" />
|
|
|
|
<title>Setting which addresses and ports Apache uses</title>
|
|
</head>
|
|
<!-- Background white, links blue (unvisited), navy (visited), red (active) -->
|
|
|
|
<body bgcolor="#FFFFFF" text="#000000" link="#0000FF"
|
|
vlink="#000080" alink="#FF0000">
|
|
<!--#include virtual="header.html" -->
|
|
|
|
<h1 align="CENTER">Setting which addresses and ports Apache
|
|
uses</h1>
|
|
|
|
<p>When Apache starts, it connects to some port and address on
|
|
the local machine and waits for incoming requests. By default,
|
|
it listens to all addresses on the machine. However, it needs to
|
|
be told to listen to specific ports, or to listen to only selected
|
|
addresses, or a combination. This is often combined with the
|
|
Virtual Host feature which determines how Apache responds to
|
|
different IP addresses, hostnames and ports.</p>
|
|
|
|
<p>The <code>Listen</code> directive tells the server to accept
|
|
incoming requests only on the specified port or
|
|
address-and-port combinations. If only a port number is
|
|
specified in the <code>Listen</code> directive, the server
|
|
listens to the given port on all interfaces. If an IP address
|
|
is given as well as a port, the server will listen on the given
|
|
port and interface. Multiple Listen directives may be used to
|
|
specify a number of addresses and ports to listen to. The
|
|
server will respond to requests from any of the listed
|
|
addresses and ports.</p>
|
|
|
|
<p>For example, to make the server accept connections on both
|
|
port 80 and port 8000, use:</p>
|
|
<pre>
|
|
Listen 80
|
|
Listen 8000
|
|
</pre>
|
|
To make the server accept connections on two specified
|
|
interfaces and port numbers, use
|
|
<pre>
|
|
Listen 192.170.2.1:80
|
|
Listen 192.170.2.5:8000
|
|
</pre>
|
|
IPv6 addresses must be surrounded in square brackets, as in the
|
|
following example:
|
|
<pre>
|
|
Listen [fe80::a00:20ff:fea7:ccea]:80
|
|
</pre>
|
|
|
|
<h2>Special IPv6 considerations</h2>
|
|
|
|
When APR supports IPv6, Apache will create IPv6-capable listening
|
|
sockets by default (i.e., when no IP address is specified on the
|
|
Listen directive). In other words, when APR supports IPv6,
|
|
<pre>
|
|
Listen 80
|
|
</pre>
|
|
is equivalent to
|
|
<pre>
|
|
Listen [::]:80
|
|
</pre>
|
|
When APR does not support IPv6,
|
|
<pre>
|
|
Listen 80
|
|
</pre>
|
|
is equivalent to
|
|
<pre>
|
|
Listen 0.0.0.0:80
|
|
</pre>
|
|
On some platforms, such as NetBSD, binding to the IPv6 wildcard address
|
|
("::") does not allow Apache to accept connections on IPv4 interfaces.
|
|
In this situation, multiple Listen directives are required, as shown
|
|
below:
|
|
<pre>
|
|
Listen 0.0.0.0:80
|
|
Listen [::]:80
|
|
</pre>
|
|
Apache does not currently detect this, so the Listen statements must
|
|
be edited manually by the administrator.
|
|
|
|
<h2>How this works with Virtual Hosts</h2>
|
|
|
|
<p>Listen does not implement Virtual Hosts. It only tells the
|
|
main server what addresses and ports to listen to. If no
|
|
<VirtualHost> directives are used, the server will behave
|
|
the same for all accepted requests. However,
|
|
<VirtualHost> can be used to specify a different behavior
|
|
for one or more of the addresses and ports. To implement a
|
|
VirtualHost, the server must first be told to listen to the
|
|
address and port to be used. Then a <VirtualHost> section
|
|
should be created for a specified address and port to set the
|
|
behavior of this virtual host. Note that if the
|
|
<VirtualHost> is set for an address and port that the
|
|
server is not listening to, it cannot be accessed.</p>
|
|
|
|
<h2>See also</h2>
|
|
See also the documentation on <a
|
|
href="mod/mpm_common.html#listen">Listen directive</a>, <a
|
|
href="vhosts/">Virtual Hosts</a>, <a
|
|
href="dns-caveats.html">DNS Issues</a> and <a
|
|
href="mod/core.html#virtualhost"><VirtualHost>
|
|
section</a>. <!--#include virtual="footer.html" -->
|
|
</body>
|
|
</html>
|
|
|