Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

O host virtual WAMP não está funcionando


Primeiro você precisa remover o exemplo dummy definições do seu arquivo vhost-httpd.conf. Eles estão lá como apenas exemplos apenas para você começar com a sintaxe, e não deve permanecer em um conf/extra/httpd-vhosts.conf ativo como eles estão apontando para pastas inexistentes.

Portanto, remova essas 2 definições do arquivo:
<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>

O segundo Apache 2.4.x está ciente de IPV4 ( 127.0.0.1 ) e IPV6 (::1) para que seus hosts O arquivo deve ficar assim com definições para as versões IPV4 e IPV6 para cada site. O navegador pode usar qualquer um arbitrariamente, então você precisa de ambos, mas provavelmente usará a rede IPV6 de preferência ao IPV4 se ambos estiverem realmente ativos em seu PC.
127.0.0.1   localhost
::1  localhost

127.0.0.1   mysite.dev
::1  mysite.dev

Agora, nos 2 Hosts Virtuais que realmente existem em seu sistema, tente isso como a definição do Host Virtual:
<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>

O <Directory>....</Directory> seção dentro do <VirtualHost>....</VirtualHost> A seção informa ao Apache de quais endereços IP ele pode aceitar conexões, portanto, usando a sintaxe do Apache 2.4 Require local limita o acesso para que apenas o PC executando o WAMPServer, ou seja, o Apache, possa se conectar a qualquer um desses sites.

Evite misturar a sintaxe do Apache 2.2 e a sintaxe do Apache 2.4 na mesma definição. Então não use
Order Allow,Deny
Allow from all

e
Require all granted

na mesma definição. Você está usando o Apache 2.4, então use a sintaxe do Apache 2.4.

Se você achar que deseja permitir que outros PCs dentro de sua rede local vejam seu site, ou seja, colega de trabalho ou filhos, etc., você pode adicionar essa sintaxe a uma ou mais definições de Host Virtual.

Permitir apenas um único outro PC em seu site
Require local
Require ip 192.168.1.100

ou 2 outros PCs
Require local
Require ip 192.168.1.100, 192.168.1.101

Ou para qualquer pessoa em sua rede local, basta usar os 3 primeiros dos 4 quartis do endereço IP.
Require ip 192.168.1

Evite também usar a sintaxe que permite o acesso de qualquer lugar, ou seja,
Require all granted  <--Apache 2.4 syntax

or 

Order Allow,Deny     <-- Apache 2.2 syntax
Allow from all    

Ele pode resolver seus problemas a curto prazo, mas está apenas esperando para pegá-lo mais tarde, quando você decidir mostrar seu site a um amigo/cliente/chefe. Se você chegar ao estágio de encaminhamento de porta, seu roteador para que o mundo seja permitido em sua rede, isso causaria TODOS OS SEUS SITES para se tornar disponível para o mundo.

Melhor mudar a ONE Virtual Host Definition para o ONE site que você quer que as pessoas vejam para testar/se vangloriar de Require local para Require all granted e permitir que esse único site seja acessado pela Internet.

Depois de fazer todas essas alterações, lembre-se de reiniciar o Apache.

Além disso, se você alterar o arquivo hosts para tornar as alterações ativas, você deve reinicializar ou executar esses comandos na linha de comando de um comando Windows iniciado com o Runs as Administrator opção.
net stop dnscache
net start dnscache
ipconfig /flushdns