Per prima cosa devi rimuovere l'esempio dummy definizioni dal file vhost-httpd.conf. Sono presenti come solo esempi solo per iniziare con la sintassi e non dovrebbe rimanere in un conf/extra/httpd-vhosts.conf
attivo poiché puntano a cartelle inesistenti.
Quindi rimuovi queste 2 definizioni dal file:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "g:/Apache24/docs/dummy-host.example.com"
ServerName dummy-host.example.com
ServerAlias www.dummy-host.example.com
ErrorLog "logs/dummy-host.example.com-error.log"
CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "g:/Apache24/docs/dummy-host2.example.com"
ServerName dummy-host2.example.com
ErrorLog "logs/dummy-host2.example.com-error.log"
CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>
Il secondo Apache 2.4.x è IPV4 ( 127.0.0.1 ) e IPV6 (::1) quindi il tuo hosts
il file dovrebbe essere simile a questo con le definizioni per entrambe le versioni IPV4 e IPV6 per ciascun sito. Il browser può utilizzare arbitrariamente l'uno o l'altro, quindi sono necessari entrambi, ma probabilmente utilizzerà la rete IPV6 al posto dell'IPV4 se entrambi sono effettivamente attivi sul tuo PC.
127.0.0.1 localhost
::1 localhost
127.0.0.1 mysite.dev
::1 mysite.dev
Ora sui 2 host virtuali che esistono effettivamente sul tuo sistema prova questo come definizione di host virtuale:
<VirtualHost *:80>
DocumentRoot "g:/wamp/www"
ServerName localhost
ServerAlias localhost
ErrorLog "logs/localhost-error.log"
CustomLog "logs/localhost-access.log" common
<Directory "G:/wamp/www">
AllowOverride All
Options Indexes FollowSymLinks
Require local
</Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "g:\wamp\www\mysite\public"
ServerName mysite.dev
ServerAlias www.mysite.dev
ErrorLog "logs/mysite-error.log"
CustomLog "logs/mysite-access.log" common
<Directory "G:/wamp/www/mysite/public">
AllowOverride All
Options Indexes FollowSymLinks
Require local
</Directory>
</VirtualHost>
Il <Directory>....</Directory>
sezione all'interno del <VirtualHost>....</VirtualHost>
la sezione indica ad Apache da quali indirizzi IP è consentito accettare connessioni, quindi utilizzando la sintassi di Apache 2.4 Require local
limita l'accesso in modo che solo il PC che esegue WAMPServer, ad esempio Apache, possa connettersi a uno qualsiasi di questi siti.
Evita di mischiare la sintassi di Apache 2.2 e la sintassi di Apache 2.4 nella stessa definizione. Quindi non usare
Order Allow,Deny
Allow from all
e
Require all granted
nella stessa definizione. Stai usando Apache 2.4 quindi usa la sintassi di Apache 2.4.
Se ritieni di voler consentire ad altri PC all'interno della tua rete locale di vedere il tuo sito, ad esempio il compagno di lavoro o i bambini, ecc., puoi aggiungere questa sintassi a una o più delle tue definizioni di host virtuale.
Consenti a un solo altro PC di accedere al tuo sito
Require local
Require ip 192.168.1.100
o altri 2 PC
Require local
Require ip 192.168.1.100, 192.168.1.101
O per chiunque sulla tua rete locale, usa i primi 3 dei 4 quartili dell'indirizzo IP.
Require ip 192.168.1
Evita anche di utilizzare la sintassi che consente l'accesso da qualsiasi luogo, ad esempio
Require all granted <--Apache 2.4 syntax
or
Order Allow,Deny <-- Apache 2.2 syntax
Allow from all
Potrebbe risolvere i tuoi problemi a breve termine, ma sta solo aspettando di prenderti in seguito quando deciderai di mostrare il tuo sito a un amico/cliente/capo. Se arrivi alla fase di Port Forwarding, il tuo router in modo che il mondo sia autorizzato a entrare nella tua rete, ciò causerebbe TUTTI I TUOI SITI per diventare disponibile al mondo.
È meglio cambiare l'UNICA definizione di host virtuale per l'UNICO sito che vuoi che le persone vedano per testare/vantarsi da Require local
a Require all granted
e consenti l'accesso a quel singolo sito solo da Internet.
Una volta apportate tutte queste modifiche, ricordati di riavviare Apache.
Inoltre, se modifichi il file hosts per rendere attivi i chnages, dovresti riavviare o eseguire questi comandi dalla riga di comando di un comando che Windows ha avviato con Runs as Administrator
opzione.
net stop dnscache
net start dnscache
ipconfig /flushdns