I have instance with multiple interfaces and I am trying to configure Apache with IP-based virtual hosting to serve multiple websites, but for some reason it just returns the main document root.
I followed this tutorial to get multiple interfaces working.
What is wrong: The website should show /var/www/mydomain/index.html, but instead it shows /var/www/html/index.html.
What I have tried: Using *:80 in VirtualHost, which works but the goal is to have multiple VirtualHosts each from different IP/interface. Removing port from VirtualHost: Doesn't do anything. Changing Listen 80 to Listen 92.168.1.231:80, which fails with Cannot assign requested address: AH00072: make_sock: could not bind to address 92.168.1.231:80. This is worrying and I haven't found any explanation what is happening. There is nothing else listening the port and if I just listen all 80 ports it works fine.
Info on my config:
/sbin/ifconfig
eth0: flags=4163 mtu 1500
inet 192.168.1.231 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::f816:3eff:fee7:b528 prefixlen 64 scopeid 0x20
ether fa:16:3e:e7:b5:28 txqueuelen 1000 (Ethernet)
RX packets 8812 bytes 6501811 (6.2 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3884 bytes 331594 (323.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0eth1: flags=4163 mtu 1500
inet 192.168.1.232 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::f816:3eff:fea1:e658 prefixlen 64 scopeid 0x20
ether fa:16:3e:a1:e6:58 txqueuelen 1000 (Ethernet)
RX packets 10623 bytes 788238 (769.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 5290 bytes 1647702 (1.5 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0eth2: flags=4163 mtu 1500
inet 192.168.1.233 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::f816:3eff:fead:8432 prefixlen 64 scopeid 0x20
ether fa:16:3e:ad:84:32 txqueuelen 1000 (Ethernet)
RX packets 6520 bytes 396490 (387.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 51 bytes 4973 (4.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0eth3: flags=4163 mtu 1500
inet 192.168.1.234 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::f816:3eff:fe4a:8dc7 prefixlen 64 scopeid 0x20
ether fa:16:3e:4a:8d:c7 txqueuelen 1000 (Ethernet)
RX packets 33438 bytes 3106902 (2.9 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 26161 bytes 16106821 (15.3 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1 (Local Loopback)
RX packets 1992 bytes 199852 (195.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1992 bytes 199852 (195.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
sudo httpd -S
VirtualHost configuration:
92.168.1.231:80 www.mydomain.com (/etc/httpd/conf.d/sites.conf:1)
ServerRoot: "/etc/httpd"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/etc/httpd/logs/error_log"
Mutex proxy: using_defaults
Mutex authn-socache: using_defaults
Mutex default: dir="/run/httpd/" mechanism=default
Mutex mpm-accept: using_defaults
Mutex authdigest-opaque: using_defaults
Mutex proxy-balancer-shm: using_defaults
Mutex rewrite-map: using_defaults
Mutex authdigest-client: using_defaults
PidFile: "/run/httpd/httpd.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="apache" id=48
Group: name="apache" id=48
cat /etc/httpd/conf.d/sites.conf
<VirtualHost 92.168.1.231:80> ServerName www.mydomain.com ServerAlias mydomain.com DocumentRoot "/var/www/mydomain/" ErrorLog "/var/log/httpd/mydomain/error_log" TransferLog "/var/log/httpd/mydomain/access_log" </VirtualHost> sudo netstat -pntl (when having Listen 80 in httpd.conf and Apache running)
Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:11211 0.0.0.0:* LISTEN 1191/memcached tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1221/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2090/master tcp6 0 0 :::3306 :::* LISTEN 1386/mysqld tcp6 0 0 ::1:11211 :::* LISTEN 1191/memcached tcp6 0 0 :::111 :::* LISTEN 1/systemd tcp6 0 0 :::80 :::* LISTEN 8094/httpd tcp6 0 0 :::22 :::* LISTEN 1221/sshd tcp6 0 0 ::1:25 :::* LISTEN 2090/master httpd.conf is pretty much vanilla except changing admin email, removing auto-indices from main document root and setting server name.
0.0.0.0which includes the more specific one too. Could you check that? What is yournetstat -pntloutput?92.168.1.231but your machine does not have that address; it has (among others)192.168.1.231. 92 and 192 are different.