Tengo un servidor con un montón de direcciones IP, y solo quiero que Apache escuche en una de ellas. No parece algo difícil de hacer, y lo he hecho una vez antes, pero esta vez tengo algunos problemas. En primer lugar, aquí es donde estoy ahora, según tengo entendido:
En todos los lugares donde Apache escucha el puerto 80, solo escucha en la IP correcta.
/etc/apache2$ grep -R ":80" .
./sites-available/default:<VirtualHost 192.168.0.82:80>
./httpd.conf:<VirtualHost 192.168.0.82:80>
./ports.conf:NameVirtualHost 192.168.0.82:80
./sites-enabled/000-default:<VirtualHost 192.168.0.82:80>
No hay mención de escuchar en 0.0.0.0.
/etc/apache2$ grep -R "0\.0\.0\.0" .
Y sin embargo ... Apache se niega a comenzar.
/etc/apache2$ sudo /etc/init.d/apache2 start
* Starting web server apache2
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
[fail]
En caso de que alguien pregunte, no estoy obligado a esa dirección:
/etc/apache2$ sudo netstat -nap | grep :80
tcp 0 0 192.168.0.83:80 0.0.0.0:* LISTEN 2822/node
El registro de errores en /var/log/apache2/error.log
solo dice:
[Wed Aug 08 03:30:18 2012] [notice] caught SIGTERM, shutting down
¿Me he perdido un lugar en la configuración de Apache? ¿Hay algo que no recuerdo buscar? ¿Por qué esto no es tan simple como lo recordaba?
Listen 192.168.0.82:80
línea crítica , que es lo que necesitaba. Seleccioné la respuesta de cjc porque fue un poco más profundo en cuanto a por qué se necesitaba esa línea. Pensé que mencionar los comentarios utilizados en la versión de Apache que viene con CentOS fue una buena adición. Pero dado que todo el mundo parece estar de acuerdo en general en que la respuesta debería ir a pauska, me adelanté y se la di. Después de todo, noto al mirar las revisiones que el comentario de Pauska influyó significativamente en la respuesta de CJC en su forma actual.