¿Cómo creo hosts virtuales para diferentes puertos en Apache?

20

Quiero que apache haga esto>

mydomain.com:80  --- opens var/www1
mydomain.com:81  --- opens var/ww2
mydomain.com:82  --- opens var/www3

El problema es que no sé si esos puertos están abiertos en Linux (¿cómo puedo verificar?)

Y si no lo son, ¿cómo los abro en el firewall y hago que Apache escuche?

Traté de hacer esto

> iptables -A RH-Firewall-1-INPUT -m  NEW -m tcp -p tcp –dport 81 -j ACCEPT
iptables v1.3.5: Couldn't load match `NEW':/lib64/iptables/libipt_NEW.so: cannot open shared object file: No such file or directory

y revisé los puertos ... parece que httpd está escuchando ... pero no sé por qué no puedo acceder a mi URL

> netstat -tulpn | less
tcp        0      0 :::80       :::*      LISTEN      6840/httpd
tcp        0      0 :::81       :::*      LISTEN      6840/httpd
tcp        0      0 :::82       :::*      LISTEN      6840/httpd
qodeninja
fuente

Respuestas:

39

Para ampliar la respuesta de Jeff, necesitará algo como esto en su configuración de apache

Listen 80
Listen 81
Listen 82

# Listen for virtual host requests on all IP addresses
NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot /var/www1
ServerName www.example1.com
</VirtualHost>

NameVirtualHost *:81
<VirtualHost *:81>
DocumentRoot /var/www2
ServerName www.example2.org
</VirtualHost>


NameVirtualHost *:82
<VirtualHost *:82>
DocumentRoot /var/www3
ServerName www.example3.org
</VirtualHost>
sreimer
fuente
Hice exactamente eso ... pero aún no hay amor
qodeninja
¿Se puede hacer telnet a cualquiera de estos puertos de forma local y / o remota?
sreimer
NameVirtualHostno tiene efecto cuando se usa con Apache 2.4
Vahid Amiri
NameVirtualHost parece tener un efecto para mí, y estoy usando Apache 2.4: sin NameVirtualHost, "<VirtualHost *: number>" no es suficiente para evitar que VirtualHost responda en otros puertos.
rsethc
7

Paso 1: Configure Apache para escuchar en cada uno de los puertos que desea atender.

Paso 2: configure una configuración de host virtual para cada puerto que desee atender.

Jeff Albert
fuente