VirtualDocumentRoot en domeinen altijd routing naar localhost - waarom?

Ik probeer dynamische virtuele hosts aan het werk te krijgen, volgde de documentatie maar het werkte niet helemaal.

Dit zijn de domeinen uit mijn HOSTS-bestand:

127.0.0.1 walestourism.local.co.uk
127.0.0.1 www.walestourism.local.co.uk
127.0.0.2 walestourism.local.co.uk
127.0.0.2 www.walestourism.local.co.uk

en dit is van httpd.conf:

NameVirtualHost 127.0.0.2

ServerName www.walestourism.local.co.uk
ServerAlias walestourism.local.co.uk
DocumentRoot /www/walestourism.local.co.uk
ScriptAlias /cgi-bin/ /www/walestourism.local.co.uk/cgi-bin

In al mijn andere was het altijd *: 80 voor het VirtualHost-deel van de bovenstaande code.

Ik heb deze code in mijn httpd.conf:

   
Order Deny,Allow   
Allow from all 
AllowOverride All

   
Order Deny,Allow   
Allow from all 
AllowOverride All

   
Order Deny,Allow   
Allow from all 
AllowOverride All

   
Order Deny,Allow   
Allow from all 
AllowOverride All

   
Order Deny,Allow   
Allow from all 
AllowOverride All

Hoe moet ik deze fout oplossen, terwijl ik, als ik het domein intyp, naar de inhoud van http://localhost leid? Dat is het basisprobleem dat ik krijg als ik probeer domeinen toe te voegen met behulp van dynamische virtuele hosts.

Ook als ik mijn browser naar "http://localhost /" verwijs, krijg ik de standaard "It Works!" pagina, dus ik weet dat mijn server actief is en dat dit zeker iets te maken heeft met de configuratie van de vhosts.

Ik controleerde mijn foutenlog - geen fouten als gevolg hiervan, dus waarom gaat elk domein naar localhost, zelfs als er een map voor is geconfigureerd (/ www/in dit geval is dit C:/www, mijn Apache/webserver's directory).

Ik ben nieuw in dit deel van Apache en ondanks een middagje Googelen weet ik niet hoe ik dit moet oplossen.

I decided to try this to avoid doing cmd > httpd -k restart every time I add a new virtualhost for testing, but have I done anything wrong?

Ik gebruik Apache 2.2, met Windows 7, met PHP 5.28 [hier specificaties vermelden].

Wat moet ik doen?

Alle adviezen worden zeer op prijs gesteld!

0

2 antwoord

Normaal gesproken gebeurt dit als een virtuele host verkeerd is geconfigureerd. Omdat je op windows zit heb ik geen idee hoe je je configuratie moet testen, op Linux zou je iets als doen:

/etc/init.d/httpd configtest

probeer apache te starten vanaf de opdrachtregel en kijk of er fouten zijn. Als Apache als een service is geïnstalleerd, kunt u opstartfouten zien in de gebeurtenislogboeken van Windows-toepassingen.

0
toegevoegd

Omdat je named based virtual hosting gebruikt, gebruik geen 127.0.0.2 ... hou het allemaal op 127.0.0.1 ... als dat niet lukt, controleer dan error_log voor apache (gedefinieerd in je httpd.conf) om problemen op te lossen waarom het faalt.

Zorg er bovendien voor dat Apache2 werkt met Windows met VHosts voordat je aan de slag gaat met PHP ...

Zoals per http://httpd.apache.org/docs/2.0/vhosts/examples .html :

 # Ensure that Apache listens on port 80
 Listen 80

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

 
 DocumentRoot /www/example1
 ServerName www.example1.com
 # Other directives here
 

 
 DocumentRoot /www/example2
 ServerName www.example2.org
 # Other directives here
 
0
toegevoegd
Apache werkt sowieso goed, het zijn alleen op naam gebaseerde die ik nieuw ben. Moet ik 127.0.0.2 van verwijderen?
toegevoegd de auteur avenas8808, de bron
Bedankt! Wat betreft op naam gebaseerde virtuele hosting, ik denk dat dat betekent dat er niet meer httpd -k herstart wordt om opnieuw te starten?
toegevoegd de auteur avenas8808, de bron
gewijzigd met de juiste configuratie. dit is van toepassing op alle gebonden interfaces voor apache
toegevoegd de auteur sdolgy, de bron