Virtual hosts
Maar nu heb ik er toch een. Ik denk dat ik in mijn leven al zeker meer dan 100 virtualhosts heb aangemaakt dus dat moet toch een koud kunstje zijn.
De situatie:
men neme:
- 1 virtual machine met ubuntu 16.04 server.
- apache geïnstalleerd. (werkt, ip in browser en krijg de default pagina)
- virtual host aangemaakt
- apache opnieuw gestart
- /etc/hosts aangepast met juiste ip adres
Voila, zou je zeggen het moet werken.
In de access.log zie ik niets terug als een 404. Klopt ook want ik krijg geen pagina voor mijn neus.
Als ik op de server zelf een wget uitvoer, dan haalt ie netjes de index.html op.
Dus in principe zit het goed.
De virtuele server staat in de zelfde iprange als mijn pc:
192.168.1.102 <- server
192.168.1.107 <- client
Dus in mijn ogen zou dit gewoon moeten werken.
192.168.1.102 intikken in de browser op 192.168.1.107 werkt.
firewall doen we niet aan dus die kan ook geen roet in het eten gooien.
Error.log ook nagepluisd, die is mooi leeg.
Maar wat dan wel?
Misschien iemand nog ideeën?
Gewijzigd op 22/03/2017 09:48:07 door Bart V B
Hoe ziet je je virtual host er dan uit? Is je log wel writable?
mijn vhost:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName example.lc
ServerAlias www.example.lc
DocumentRoot /var/www/example.lc/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
ServerAdmin [email protected]
ServerName example.lc
ServerAlias www.example.lc
DocumentRoot /var/www/example.lc/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
systemctl status apache2.service
Levert ook geen fouten.
Gewijzigd op 22/03/2017 10:04:16 door Bart V B
Kijk dan eens of het werkt? Vergeet Apache ook niet even te herstarten tussen tijds.
Code (php)
1
2
3
4
5
2
3
4
5
[Wed Mar 22 09:54:37.811589 2017] [mpm_event:notice] [pid 2932:tid 140211276085120] AH00489: Apache/2.4.18 (Ubuntu) configured -- resuming normal operations
[Wed Mar 22 09:54:37.811614 2017] [core:notice] [pid 2932:tid 140211276085120] AH00094: Command line: '/usr/sbin/apache2'
[Wed Mar 22 09:57:04.912078 2017] [mpm_event:notice] [pid 2932:tid 140211276085120] AH00491: caught SIGTERM, shutting down
[Wed Mar 22 09:57:05.106783 2017] [mpm_event:notice] [pid 3242:tid 140371878143872] AH00489: Apache/2.4.18 (Ubuntu) configured -- resuming normal operations
[Wed Mar 22 09:57:05.107040 2017] [core:notice] [pid 3242:tid 140371878143872] AH00094: Command line: '/usr/sbin/apache2'
[Wed Mar 22 09:54:37.811614 2017] [core:notice] [pid 2932:tid 140211276085120] AH00094: Command line: '/usr/sbin/apache2'
[Wed Mar 22 09:57:04.912078 2017] [mpm_event:notice] [pid 2932:tid 140211276085120] AH00491: caught SIGTERM, shutting down
[Wed Mar 22 09:57:05.106783 2017] [mpm_event:notice] [pid 3242:tid 140371878143872] AH00489: Apache/2.4.18 (Ubuntu) configured -- resuming normal operations
[Wed Mar 22 09:57:05.107040 2017] [core:notice] [pid 3242:tid 140371878143872] AH00094: Command line: '/usr/sbin/apache2'
Geen specifieke errors dat er iets mis is met de virtualhosts.
Alleen met opstarten dus dat is goed.
EDIT
access.log:
Code (php)
1
2
3
4
2
3
4
192.168.1.107 - - [22/Mar/2017:09:25:47 +0100] "GET / HTTP/1.1" 200 470 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko"
192.168.1.107 - - [22/Mar/2017:09:25:48 +0100] "GET /favicon.ico HTTP/1.1" 404 505 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; Trident/7.0; rv:11.0) like Gecko"
192.168.1.107 - - [22/Mar/2017:09:26:36 +0100] "GET /favicon.ico HTTP/1.1" 404 505 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; Trident/7.0; rv:11.0) like Gecko"
192.168.1.102 - - [22/Mar/2017:09:30:56 +0100] "GET / HTTP/1.1" 200 466 "-" "Wget/1.17.1 (linux-gnu)"
192.168.1.107 - - [22/Mar/2017:09:25:48 +0100] "GET /favicon.ico HTTP/1.1" 404 505 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; Trident/7.0; rv:11.0) like Gecko"
192.168.1.107 - - [22/Mar/2017:09:26:36 +0100] "GET /favicon.ico HTTP/1.1" 404 505 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; Trident/7.0; rv:11.0) like Gecko"
192.168.1.102 - - [22/Mar/2017:09:30:56 +0100] "GET / HTTP/1.1" 200 466 "-" "Wget/1.17.1 (linux-gnu)"
EDIT 2
Effe wachten...
Want nu snap ik er even helemaal niets van.
Apache access.log geeft een 404 error op mijn pagina.
Code (php)
1
192.168.1.107 - - [22/Mar/2017:10:37:45 +0100] "GET /example.lc/ HTTP/1.1" 404 505 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko"
Ik heb 000-default.conf uitgeschakeld, dus nu neemt hij de eerstvolgende virtual host.
En dat klopt want ik krijg de testpagina te zien als ik het ip adres intik.
Als ik example.lc indruk dan word het een 404 pagina. Dat kan toch helemaal niet?
Gewijzigd op 22/03/2017 10:45:51 door Bart V B
Voor degene die tegen dit probleem aanloopt als je een virtualbox met ubuntu server (of andere distro) wil gebruiken het is eenvoudiger dan je denkt.
Op de client, in mijn geval dat een windows pc met windows10 verander je:
C:\Windows\System32\drivers\etc\hosts
Zet daar in het ipadres van de vituralbox server:
192.168.1.102 example.lc
En het werkt.
Dus wat je normaal gesproken alleen doet op de server /etc/hosts aanpassen moet dus ook op de client.
Gewijzigd op 25/03/2017 10:16:50 door Bart V B
Je zou natuurlijk ook een DNS server kunnen draaien waar je die verwijzingen in zet, maar dat is weer een stapje verder.
De reden daarvan is zoals Ben al aangeeft, example.lc wordt niet geresolved in een dns.
Dit moet dus op de client omdat apache daadwerkelijk de string example.lc moet ontvangen om te kunnen beslissen/interpreteren tbv de verschillende virtualhosts. Totdat je dit in C:\Windows\System32\drivers\etc\hosts kwam er slechts in ip adres binnen en dat is de reden waarom je 404's kreeg.
Maar inderdaad dat was een voor mij even tandje teveel.
(houd me aanbevolen voor een fatsoenlijk stukje leesvoer hoe het precies werkt)
Dat is uiteindelijk wel wat ik moet hebben, om mijn test opstelling goed te kunnen testen.
Efin, ik ben al blij dat dit zo nu werkt.
Weer wat geleerd wat ik nog niet wist.
Thnx Aad, arien, en Ben voor jullie input.