Erro WAMP: Proibido Você não tem permissão para acessar / phpmyadmin / neste servidor


275

Eu sou novo no WAMP e acabei de instalá-lo hoje.

A instalação correu bem e o localhost parece funcionar, mas quando tento acessar o phpMyAdmin , recebo este erro:

Proibido
Você não tem permissão para acessar / phpmyadmin / neste servidor.

Por que obtenho esse erro de acesso de permissão com o phpMyAdmin?

Estou usando o Windows 7.


57
Cuidado com a resposta aceita, o phpmyadmin do WAMP está configurado para permitir root sem senha por padrão. Allow from allabriria o banco de dados ao público. O verdadeiro problema é que o WAMP está vinculando a um endereço IPv6 na sua versão do Windows. Para corrigir basta adicionar Allow from ::1no c:\wamp\alias\phpmyadmin.conf <Directory "c:/wamp/apps/phpmyadmin3.4.5/">.
Tiberiu-Ionuț Stan

2
Estranhamente, essa mesma pergunta, mais ou menos, é protegida como wiki da comunidade aqui
ruffin

Respostas:


368

Altere o conteúdo do arquivo c:\wamp\alias\phpmyadmin.confpara o seguinte.

Nota: Você deve definir a Allowdiretiva para permitir a partir da sua máquina local por motivos de segurança. A diretiva Allow from allé insegura e deve ser limitada à sua máquina local.

<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
        Allow from all
</Directory>

Aqui minha instalação do WAMP está no c:\wamp pasta Mude de acordo com a sua instalação.

Anteriormente, era assim:

<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
</Directory>

As versões modernas do Apache 2.2 e versões posteriores procurarão um loopback IPv6 em vez de um loopback IPv4 (seu host local).

O verdadeiro problema é que o wamp está vinculando a um endereço IPv6. A correção: basta adicionar Allow from ::1- Tiberiu-Ionuț Stan

<Directory "c:/wamp22/apps/phpmyadmin3.5.1/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
    Deny from all
    Allow from localhost 127.0.0.1 ::1
</Directory>

Isso permitirá que apenas a máquina local acesse aplicativos locais para Apache.

Reinicie o servidor Apache depois de fazer essas alterações.


1
Anteriormente, isso será Negar a todos Permitir a partir de 127.0.0.1 Também reinicie o serviço do servidor apache após modificar
Akhil Thayyil

2
depende da sua versão do apache. apache> 2.4.x, você precisa de uma configuração diferente. veja minha resposta abaixo
Kyle

Parece que o motivo pelo qual isso foi definido como 127.0.0.1 é porque esse é o endereço ipv4 do host local. Por algum motivo, mesmo que você esteja no host local, o phpmyadmin não está permitindo sua entrada. Então você permite que qualquer usuário obtenha acesso. Isso não parece uma vulnerabilidade de segurança, a menos que você coloque seu site wamp online. Eu posso estar errado - completo novato. Na verdade, sim, leia o resto do tópico. Não faça a correção acima.
precisa saber é o seguinte

3
O phpmyadmin do WAMP está configurado para permitir root sem senha. Allow from allabriria o banco de dados ao público.
Tiberiu-Ionuț Stan

34
O verdadeiro problema é que o wamp está vinculando a um endereço IPv6. A correção: basta adicionarAllow from ::1
Tiberiu-Ionuț Stan

137

Você precisa apenas verificar se o seu servidor WAMP está online ou não.

Para colocar seu servidor WAMP online, siga estas etapas.

  1. Vá para o ícone de notificação do servidor WAMP (na barra de tarefas).
  2. Clique duas vezes no ícone do servidor WAMP.
  3. Selecione a última opção no menu, ou seja, Colocar Online
  4. Seu servidor será reiniciado automaticamente (apenas nas versões mais recentes). Caso contrário, você precisará reiniciar o servidor manualmente.

E você está feito ...


4
"somente versões mais recentes" ficará desatualizada rapidamente. Você está no mundo da TI, por isso mencione um número de versão. Além disso, isso não funcionou para mim. Sempre mantenha-o online, executando-o como administrador. Pior, tenha alguns domínios trabalhando usando hosts virtuais, mas não é possível acessar o host local ou 127.0.0.1, ou com * / phpmyadmin: s Estupidamente estranho. Isso está no Win8 btw. Pode ter algo a ver com o Visual Studio 2012 Ultimate Edition de 64 bits também instalado (que inclui o IIS 8, irá atualizar)
rkeet

1
Meu Deus, eu me sinto estúpido. Passei um bom tempo brincando com "Exigir tudo concedido" etc. Obrigado.
John McCollum 5/05

A opção Colocar online agora não está disponível. Para ativá-lo, clique direito sobre as configurações Wamp Ícone> Wamp> Verificar no item de menu: Online / Offline, quando agora você deixou clique sobre o ícone, o 'Coloque Online' opção estará disponível
Oush

117

Se você estiver usando o WAMP com Apache 2.4.2 ou superior, precisará usar em Require allvez de Allowe remover Order Deny,Allow:

<Directory "f:/Projects/myproject/www/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
    Require all granted
</Directory>

* conforme declarado nesta postagem do blog


1
Proibido Você não tem permissão para acessar / phpmyadmin / neste servidor.
precisa

sua resposta deveria ser a melhor resposta! funcionou como um encanto :)
Tohid

Isso funcionou para mim. Servidor WAMP 2.2; Apache 2.4.2; Windows 8.
Michael J

Obrigado, isso funcionou para mim (ao contrário de outras respostas aqui incluindo o aceite)
Patrick Moore

No meu WAMP, ele foi definido como <Diretório /> e funcionou até eu precisar alterar a pasta para minha pasta da caixa de depósito. Por que foi definido como <Diretório />? Esta solução funciona muito bem no entanto.
Jens Törnell

41

Basta usar 127.0.0.1 em vez de localhost (nenhuma alteração no arquivo de configuração é necessária).

Sistema:

  • Windows 7
  • wampserver2.2d-x64

Isso funciona:

http://127.0.0.1/phpmyadmin/

Este falha:

http://localhost/phpmyadmin/

3
O motivo é que o host local é resolvido como um endereço IPv6, enquanto a configuração padrão do wamp permite apenas o endereço de loopback IPv4.
Sherbrow

35

Eu apenas tive o mesmo problema. Acontece que minha instalação do Windows está usando o endereço IPv6 em::1 vez de 127.0.0.1. Para resolver isso, abri httpd.confe alterei a seguinte linha:

Allow from 127.0.0.1

para:

Allow from 127.0.0.1 ::1

Agora eu posso acessar o servidor através localhost. Faça o que fizer, não remova a Deny from all fromlinha acima, ou qualquer pessoa na sua rede pode obter acesso ao seu servidor da web (a menos que você queira, é claro).


Eu também tive que fazer essa alteração em todos os pseudônimos, a propósito. Para editar aliases, vá para: "[ícone do wamp] -> Apache-> Diretórios de alias -> [alias-url] -> editar alias"
Micke

Eu executei ping localhostno meu terminal cmd e consegui Reply from ::1: time<1ms. Parece que minha máquina Win7 está resolvendo o host local com um endereço IPv6. Sua solução fez o truque. Eu concordo, essa provavelmente deve ser a resposta aceita.
18713 Chris

Impressionante!!!! Eu tive o mesmo problema no meu Mac (MAMP) e agora funciona! Você salvou meu dia, cara!: D
drpelz

In httpd.confnão funciona para mim, ao contrário, quando eu faço a mesma coisa phpmyadmin.conf, funciona!
Adil

1
Eu acho que essa resposta deve ser editadas, como o arquivo correto para editar é wamp/alias/phpmyadmin.conf, e nãohttpd.conf
bg17aw

21

Se você estiver no Windows 7 ou 8, o Apache pode estar vendo as conexões provenientes de ":: 1", que é o equivalente do IPv6 a 127.0.0.1.

Você pode verificar isso consultando o Apache Access Log (acessível no menu WAMP)

::1 - - [20/Dec/2012:21:35:04 +0000] "GET /phpmyadmin/ HTTP/1.1" 403 213

O :: 1 no início é o endereço do cliente. O 403 no final é o código de acesso negado.

As respostas acima removerão todas as restrições e abrirão o phpmyadmin para todos, mas se você ainda quiser restringir o phpmyadmin apenas à sua máquina (geralmente uma boa ideia), então abaixo da linha ...

Allow from 127.0.0.1

.. adicione o seguinte:

Allow from ::1

(editar: sugestão adicionada do Nukeface)


1
Obrigado. Este deve ser o principal comentário. Você explica o problema, resolve-o e não apresenta uma enorme vulnerabilidade de segurança ao servidor de alguém.
precisa saber é o seguinte

1
Eu tenho a solução como uma linha separada e adicional. Eu uso " Allow from 127.0.0.1próxima linha Allow from ::1". Apenas no caso de ele muda de volta para IPv4 (porque dizem-me desabilitar o IPv6)
rkeet


8

Eu descobri que o uso do host local não funcionaria corretamente para permitir o acesso local do servidor. Eu tive que usar 127.0.0.1.

No phpmyadmin.conf isso não funcionou:

Deny from all
Allow from localhost

isso funcionou:

Deny from all
Allow from 127.0.0.1

Estou usando o WampServer versão 2.2


1
Isso é provavelmente porque você não tem um arquivo HOSTS configurado corretamente, configurar isso corretamente e você será capaz de usar localhost
RiggsFolly

8

Para o Apache 2.4.2:

No httpd.conf:

mudança

Require local

para

Require all granted

1
Bro Você fez o meu dia :)
droidchef

7

Eu queria executar meu servidor online e não em localhost / 127.0.0.1 e tinha a mensagem proibida. Estou executando o servidor WAMP 2.2 ( Apache 2.4.2 / PHP 5.4.3 / MySQL 5.5.24) no Windows 7 de 64 bits. O que funcionou para mim é o seguinte:

  1. Pressione o ícone WAMP de inicialização no menu
  2. Escolha a pasta Apache
  3. Escolha o arquivo httpd.conf
  4. Na seção da guia Diretório (seção com o texto "# Online -> Exigir tudo concedido"), eu tinha a opção "Exigir local", que mudei para "Exigir tudo concedido"
  5. Reinicie todos os serviços do WAMP

Mais uma vez, funcionou para mim e, a partir deste segmento, entendo que há muitos casos em que você pode receber a mensagem de erro acima. Portanto, se o meu não funcionar, tente outras soluções.

Boa sorte.

(Espero que ajude alguém assim me ajudou. Não encontrei nenhuma das soluções acima funcionando para mim.)


Senhor, resolveu um problema que passei o fim de semana inteiro tentando resolver. Obrigado!
Falcão

6

1. altere D: \ wamp \ bin \ apache \ apache2.4.9 \ conf \ httpd.conf perto da linha 279

Require local 

 into 

Require all granted

2. mude assim em D: \ wamp \ alias \ phpmyadmin.conf do existente

   <Directory "d:/wamp/apps/phpmyadmin4.1.14/">
       Options Indexes FollowSymLinks MultiViews
       AllowOverride all
       Require all granted
       Order Deny,Allow
       Allow from all
   </Directory>

3.Clique para reiniciar todos os serviços no wamp.

4.Clique em colocar online no wamp.

5. Novamente Clique para reiniciar todos os serviços no wamp.

Espero que ajude..


4

Eu consertei esse problema antes. Isso pode acontecer devido a vários motivos, para que você possa usar algumas ou todas as próximas etapas (abrir arquivos mencionados usando qualquer editor de texto, como o Notepad ++ ).

Se você instalar o WAMP em C: \ wamp

1- Abra o arquivo C: \ wamp \ bin \ apache \ apache2.2.22 \ conf \ httpd.conf

Nota : você pode ter uma versão diferente do Apache que o Apache 2.2.22 , portanto, é necessário escrevê-la.

Procure por: Diretório "C: / wamp / www /" . Você encontrará algo semelhante a este:

<Directory "C:/wamp/www/">
   # maybe there is some comments here ...
    AllowOverride all
    Order Allow,Deny
    Allow from all
</Directory>

Certifique-se de que Permitir tudo existe e não seja comentado.

2- Abra o arquivo C: \ wamp \ alias \ phpmyadmin.conf .

Certifique-se de que

<Directory "C:/wamp/apps/phpmyadmin3.5.1/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1  
</Directory>

Altere Permitir de 127.0.0.1 para Permitir de todos .

Você pode remover Negar de todos ou comentar ao adicionar # no início da linha, mas certifique-se de que Permitir de todos seja a última linha de código imediatamente antes </Directory>.

Nota: você pode ter uma versão diferente do phpMyAdmin 3.5.1.

Para usar localhost / phpmyadmin em vez de 127.0.0.1/phpmyadmin :

Abra o arquivo C: \ wamp \ bin \ apache \ apache2.2.22 \ conf \ extra \ httpd-vhosts.conf. Adicione o seguinte no final.

<VirtualHost *:80>
    DocumentRoot "C:/wamp/www"
    ServerName localhost
</VirtualHost>

Está funcionando. Muito obrigado por isso.
ajey

3

A solução simples para isso seria encontrar o arquivo phpmyadmin.conf e depois encontrar o código abaixo,

<Directory "c:/wamp/apps/phpmyadmin3.5.1/">

Options Indexes FollowSymLinks MultiViews

AllowOverride all

    Order Deny,Allow

Deny from all

Allow from 127.0.0.1

</Directory>

Altere "Negar de todos" para "Permitir de todos".

OU

Siga o link abaixo para entender melhor como fazê-lo,

O WAMP diz Proibido Você não tem permissão para acessar / phpmyadmin / neste servidor Windows 7 ou 8

Aproveitar :)


3

Se o WampServer funcionar no computador, ele está instalado, mas não em outro dispositivo da sua rede (por exemplo, do seu telefone) com a mensagem 'Você não tem permissão para acessar neste servidor'. tente o seguinte.

1. Edite o httpd-vhosts.conf ( C:\wamp64\bin\apache\apache2.4.33\conf\extra\httpd-vhosts.conf), para que fique assim:

<Directory "${INSTALL_DIR}/www/">
    Options +Indexes +Includes +FollowSymLinks +MultiViews
    AllowOverride All
    Require all granted
</Directory>

2. Edite o phpmyadmin.conf ( C:\wamp64\alias\phpmyadmin.conf), para que fique assim:

<Directory "d:/wamp64/apps/phpmyadmin4.7.9/">
    Options +Indexes +FollowSymLinks +MultiViews
    AllowOverride all
        Order Deny,Allow
        Allow from all
        Require all granted

3. Reinicie os serviços WampServer


para mim, aplicar as etapas 1 (e 3) foi o suficiente. Isso não é uma falha, é por design. Para práticas recomendadas, consulte stackoverflow.com/questions/36810669/…
HyperActive

2

Para o Apache 2.4.2, a solução é: no httpd.conf na linha 265, altere Exigir nenhum para Exigir todos os concedidos. Isso é tudo.



2

Até eu enfrentei o mesmo problema com o meu domínio. Se eu desse um endereço IP, estava funcionando. Mas com um nome de domínio não era.

Então eu verifiquei meu registro DNS A . O domínio tinha várias entradas com diferentes endereços IP atribuídos. Eu removi todos os valores errados e funcionou. Apenas mais uma lista de verificação se alguém enfrentar um problema semelhante.


2

Apenas edite o arquivo "c: \ wamp \ alias \ phpmyadmin.conf"

como isso

<Directory "C:/wamp64/apps/phpmyadmin4.5.5.1/">
    Options Indexes FollowSymLinks MultiViews

    AllowOverride All
    Require all granted
</Directory>

C:/wamp64/apps/phpmyadmin4.5.5.1/não é um arquivo e esta pergunta já teve uma solução aceita. Tente evitar 'esbarrar' nas perguntas do topo, fornecendo respostas para elas, a menos que a pergunta ainda não tenha sido marcada como resolvida ou você tenha encontrado uma abordagem alternativa dramaticamente melhor para o problema :)
Obsidian Age

Nenhuma das soluções funcionou para mim. Editei o caminho correto do arquivo, obrigado pela dica.
Daniel

2

Em WAMP 3.1.4 x64Eu resolvi atualizar o arquivo C:\wamp64\alias\phpmyadmin.confa partir desta:

Alias /phpmyadmin "c:/wamp64/apps/phpmyadmin4.8.3/"

<Directory "c:/wamp64/apps/phpmyadmin4.8.3/">
    Options +Indexes +FollowSymLinks +MultiViews
  AllowOverride all
  <ifDefine APACHE24>
        Require local
    </ifDefine>
    <ifDefine !APACHE24>
        Order Deny,Allow
    Deny from all
    Allow from localhost ::1 127.0.0.1
    </ifDefine>

# To import big file you can increase values
  php_admin_value upload_max_filesize 128M
  php_admin_value post_max_size 128M
  php_admin_value max_execution_time 360
  php_admin_value max_input_time 360
</Directory>

para isso:

Alias /phpmyadmin "c:/wamp64/apps/phpmyadmin4.8.3/"

<Directory "c:/wamp64/apps/phpmyadmin4.8.3/">
    Options +Indexes +FollowSymLinks +MultiViews
  AllowOverride all
    Require all granted

# To import big file you can increase values
  php_admin_value upload_max_filesize 128M
  php_admin_value post_max_size 128M
  php_admin_value max_execution_time 360
  php_admin_value max_input_time 360
</Directory>

E, finalmente, reiniciando todos os serviços WAMP.


1

No meu caso, o problema foi que a versão do phpMyAdmin foi especificada incorretamente no phpmyadmin.confarquivo. Você pode verificar se:

  1. Vá para wamp / apps / phpmyadmin3.xx : observe o nome do arquivo - qual versão você está usando atualmente?

  2. Abra o arquivo wamp / alias / phpmyadmin.conf:

    Opções Índices FollowSymLinks MultiViews AllowOverride all Order Deny, Allow Allow from all

Verifique se a primeira linha (diretório "c: /wamp/apps/phpmyadmin3.xx/") é o nome do arquivo exatamente igual ao seu nome real.

Verifique se o nome do arquivo de diretório está absolutamente correto.


0

O que estava acontecendo com a minha instalação era que o WAMP estava vinculado a um endereço IPv6 (e toda vez que eu reinstalava o WAMP).

Para consertar isso, entrei c:\wamp\alias\phpmyadmin.confe adicionei a linhaAllow from ::1


0

O motivo pode ser 127.0.0.1 não está vinculado ao host local. Verifique o arquivo 'C: \ Windows \ System32 \ drivers \ etc \ hosts'. Deve ter uma linha como esta:

# localhost resolução de nomes é tratada no próprio DNS.
127.0.0.1 localhost


0

Tentei configurar minha senha ... E foi assim que fui bloqueado do host local. Eles deveriam consertar isso ...

De qualquer forma, tenha cuidado com conselhos aleatórios. Todos eles podem ou não funcionar. Mas alguns conselhos o impedirão ainda mais. Aquele que funcionou para mim:

Digite " http://127.0.0.1/phpmyadmin/" na barra de endereço.

Então eu descobri que http://localhost/phpmyadmin/também funciona.

No entanto, antes disso, por desespero, eu tinha ...

Excluí os arquivos, desinstalei o WAMP, excluí cookies temporários e instalei o WAMP novamente. Ele ainda não aceita "localhost" (e estou cansado após um dia tentando acessar o WAMP), mas o 127.0.0.1 e o localhost / phpmy ... funcionam. Fico feliz em ver a página de volta. E comece a trabalhar novamente.

Se você ler este tópico até aqui, significa que provavelmente está com um grande problema ... Windows 8, WAMP (wampserver 2.2). Gostaria de saber o que ele precisa para ter acesso de volta ao localhost.


0

No meu caso, um servidor WAMP foi instalado anteriormente no meu PC; portanto, ao instalar o novo, alguns arquivos não sobrescritos, tudo o que você precisa fazer nesse caso é acessar o C: \ e excluir toda a pasta WAMP e instalá-lo novamente. .


0

Verifique se você está logado como root ou usuário com privilégios. Apenas para ter certeza, saia e faça login novamente com root / no-password.


0

Se o seu ícone WAMP não estiver verde, tente: Clique com o botão esquerdo do mouse em Ícone WAMP> MySQL> Serviços> Serviço de Instalação


0

Então, todas essas respostas são basicamente as mesmas. Eles abordam apenas uma idéia: ela deve estar relacionada ao DNS . Bem, essa não é a única parte disso. Depois de muitas mudanças, eu estava chegando a lugar nenhum lendo a próxima "mesma resposta", esperando que ela seguisse o meu caminho.

O que fez o truque para mim foi ajustar minhas versões do Apache . Eu acho que foi o problema, é que um dos arquivos de configuração fica fora do caminho ou que a instalação devido ao IIS pode ter sido uma bagunça /ou /ou /etc. E, portanto, forçar uma mudança de versão reavalia tudo, desde o firewall até configurações ruins.

De fato, quando voltei para o Apache 2.4.2, ele voltou a ser proibido. E assim que eu volto ao Apache 2.4.4, ele volta. Isso exclui problemas de rede local. Eu só queria ressaltar que todas as respostas aqui são as mesmas e que pude eliminar o proibido alterando a versão do Apache.


0

Eu tive o mesmo problema. O arquivo hosts está corrompido! havia:

localhos 127.0.0.1

localhost 127.0.0.1

localhos 127.0.0.1
localhos 127.0.0.1

O resultado é que localhostnão está definido.

Solução: edite o arquivo hosts com direitos de administrador e corrija apenas uma entrada:

localhost 127.0.0.1

0

Na versão mais recente do WAMP, de alguma forma, tive um "negar tudo" no meu .htaccessarquivo. Se nada mais funcionar, verifique lá também.


0

No meu caso, usando o Wampserver 3 64bit versão 3.0.0, o caminho para o diretório phpmyadmin4.5.2 no arquivo phpmyadmin.conf estava errado. Por alguma razão, o diretório de aplicativos está dentro do diretório de scripts. Então, eu digitei os caminhos corretos, como mostrado abaixo. Então você provavelmente precisará reiniciar o Apache e recarregar a página.

Eu mudei:

Alias /phpmyadmin "C:/wamp64/apps/phpmyadmin4.5.2/"

<Directory "C:/wamp64/apps/phpmyadmin4.5.2/">
    Options Indexes FollowSymLinks MultiViews
  AllowOverride all
    Require local

# To import big file you can increase values
  php_admin_value upload_max_filesize 128M
  php_admin_value post_max_size 128M
  php_admin_value max_execution_time 360
  php_admin_value max_input_time 360
</Directory>

Para:

Alias /phpmyadmin "C:/wamp64/scripts/apps/phpmyadmin4.5.2/"

<Directory "C:/wamp64/scripts/apps/phpmyadmin4.5.2/">
    Options Indexes FollowSymLinks MultiViews
  AllowOverride all
    Require local

# To import big file you can increase values
  php_admin_value upload_max_filesize 128M
  php_admin_value post_max_size 128M
  php_admin_value max_execution_time 360
  php_admin_value max_input_time 360
</Directory>
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.