Errore WAMP: proibito Non hai i permessi per accedere a / phpmyadmin / su questo server


275

Sono nuovo di WAMP e l'ho appena installato oggi.

L'installazione è andata bene e localhost sembra funzionare, ma quando provo ad accedere a phpMyAdmin ottengo questo errore:

Proibito
Non hai i permessi per accedere a / phpmyadmin / su questo server.

Perché riscontro questo errore di accesso alle autorizzazioni con phpMyAdmin?

Sto usando Windows 7.


57
Fai attenzione alla risposta accettata, phpmyadmin di WAMP è configurato per consentire il root senza password per impostazione predefinita. Allow from allaprirebbe il database al pubblico. Il vero problema è che WAMP è vincolante per un indirizzo IPv6 nella tua versione di Windows. Per risolvere basta aggiungere Allow from ::1in c:\wamp\alias\phpmyadmin.conf <Directory "c:/wamp/apps/phpmyadmin3.4.5/">.
Tiberiu-Ionuț Stan,

2
Stranamente, questa stessa domanda, dare o avere, è protetta come wiki della comunità qui
ruffin

Risposte:


368

Modificare il contenuto del file c:\wamp\alias\phpmyadmin.confin quanto segue.

Nota: è necessario impostare la AllowDirettiva per consentire dal proprio computer locale per motivi di sicurezza. La direttiva non Allow from allè sicura e dovrebbe essere limitata al computer locale.

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

Qui la mia installazione di WAMP è nella c:\wampcartella. Modificalo in base alla tua installazione.

In precedenza, era così:

<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>

Le versioni moderne di Apache 2.2 e versioni successive cercheranno un loopback IPv6 anziché un loopback IPv4 (il tuo host locale).

Il vero problema è che wamp è vincolante per un indirizzo IPv6. La correzione: basta aggiungere 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>

Ciò consentirà solo al computer locale di accedere alle app locali per Apache.

Riavvia il server Apache dopo aver apportato queste modifiche.


1
In precedenza, questo sarà Negato da tutto Consenti da 127.0.0.1 Riavvia anche il servizio del server apache dopo aver modificato
Akhil Thayyil,

2
dipende dalla versione di Apache. apache> 2.4.x, hai bisogno di una configurazione diversa. vedi la mia risposta qui sotto
Kyle

Sembra che il motivo per cui per impostazione predefinita è stato impostato su 127.0.0.1 è perché si tratta dell'indirizzo ipv4 localhost. Per qualche ragione, anche se sei su localhost, phpmyadmin non ti consente di entrare. Quindi permetti a qualsiasi utente di ottenere l'accesso. Questa non sembra una vulnerabilità di sicurezza a meno che tu non metta online il tuo sito Wamp. Potrei sbagliarmi però: principiante completo. In realtà sì, leggi il resto del thread. Non fare la correzione sopra.
obesechicken13,

3
Phpmyadmin di WAMP è configurato per consentire il root senza password. Allow from allaprirebbe il database al pubblico.
Tiberiu-Ionuț Stan

34
Il vero problema è che wamp è vincolante per un indirizzo IPv6. La correzione: basta aggiungereAllow from ::1
Tiberiu-Ionuț Stan

137

Devi solo verificare se il tuo server WAMP è online o meno.

Per mettere in linea il server WAMP, attenersi alla seguente procedura.

  1. Vai all'icona di notifica del tuo server WAMP (nella barra delle attività).
  2. Clic singolo sull'icona del server WAMP.
  3. Seleziona l'ultima opzione dal menu, ovvero Metti online
  4. Il server si riavvierà automaticamente (solo nelle ultime versioni). Altrimenti, è necessario riavviare il server manualmente.

E sei fatto ...


4
"solo le ultime versioni" diventerà presto obsoleto. SEI nel mondo IT, quindi menziona un numero di versione. Inoltre questo non ha funzionato affatto per me. Lo hai sempre online, eseguendolo come amministratore. Peggio ancora, alcuni domini funzionano usando host virtuali ma non riescono nemmeno ad accedere a localhost o 127.0.0.1 o con * / phpmyadmin: s Stupidamente strano. Questo è su Win8 tra l'altro. Potrebbe avere a che fare con Visual Studio 2012 Ultimate 64 bit anche installato (che include IIS 8, verrà aggiornato)
rkeet

1
Mio Dio, mi sento stupido. Ho passato un bel po 'a scherzare con "Richiedi tutto concesso" ecc. Grazie.
John McCollum,

L'opzione Put Online non è ora disponibile. Per abilitarlo, fai clic con il tasto destro sull'icona di Wamp> Impostazioni di Wamp> Controlla la voce di menu: Online / Offline, quando ora fai clic sull'icona, l'opzione "Metti online" sarà disponibile
Oush,

117

Se si utilizza WAMP con Apache 2.4.2 o versioni successive, è necessario utilizzare Require allanziché Allowe rimuovere Order Deny,Allow:

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

* come indicato in questo post sul blog


1
Proibito Non sei autorizzato ad accedere a / phpmyadmin / su questo server.
Hassan Z,

la tua risposta doveva essere la migliore risposta! ha funzionato come un fascino :)
Tohid il

Questo ha funzionato per me. WAMP Server 2.2; Apache 2.4.2; Windows 8.
Michael J,

Grazie, questo ha funzionato per me (a differenza di altre risposte tra cui quella accettata)
Patrick Moore,

Nel mio WAMP era impostato su <Directory /> e funzionava fino a quando non avevo bisogno di cambiare la cartella nella mia cartella dropbox. Perché è stato impostato su <Directory />? Questa soluzione funziona alla grande comunque.
Jens Törnell,

41

Basta usare 127.0.0.1 invece di localhost (non sono necessarie modifiche al file di configurazione).

Sistema:

  • Windows 7
  • wampserver2.2d-x64

Questo funziona:

http://127.0.0.1/phpmyadmin/

Questo fallisce:

http://localhost/phpmyadmin/

3
Il motivo è che localhost viene risolto come indirizzo IPv6, mentre la configurazione predefinita di wamp consente solo l'indirizzo di loopback IPv4.
Sherbrow

35

Ho appena avuto lo stesso problema. Si scopre che la mia installazione di Windows sta usando il indirizzo IPv6::1 anziché 127.0.0.1. Per risolvere questo, ho aperto httpd.confe modificato la seguente riga:

Allow from 127.0.0.1

per:

Allow from 127.0.0.1 ::1

Ora posso accedere al server tramite localhost. Qualunque cosa tu faccia, non rimuovere ilDeny from all from riga sopra, o chiunque sulla tua rete può ottenere l'accesso al tuo server web (a meno che non sia quello che vuoi ovviamente).


A proposito, ho anche dovuto apportare questa modifica a tutti gli alias. Per modificare gli alias, vai a: "[icona wamp] -> Apache-> directory alias -> [alias-url] -> modifica alias"
Micke

Ho eseguito ping localhostsul mio terminale cmd e ottenuto Reply from ::1: time<1ms. Sembra che la mia macchina Win7 stia risolvendo localhost con un indirizzo IPv6. La tua soluzione ha funzionato. Sono d'accordo, questa dovrebbe probabilmente essere la risposta accettata.
Chris,

Eccezionale!!!! Ho avuto lo stesso problema sul mio Mac (MAMP) e ora funziona! Mi hai salvato la giornata, amico!: D
drpelz l'

In httpd.confnon funziona per me, invece quando faccio la stessa cosa phpmyadmin.conffunziona!
Adil,

1
Penso che questa risposta debba essere modificata, dato che il file corretto da modificare è wamp/alias/phpmyadmin.confe nonhttpd.conf
bg17aw

21

Se sei su Windows 7 o 8, Apache potrebbe vedere le connessioni provenienti da ":: 1" che è l'equivalente IPv6 di 127.0.0.1.

Puoi verificarlo guardando nel registro di accesso di Apache (raggiungibile dal menu WAMP)

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

:: 1 all'inizio è l'indirizzo del client. Il 403 alla fine è il codice Accesso negato.

Le risposte sopra rimuoveranno tutte le restrizioni e apriranno phpmyadmin a tutti, ma se vuoi ancora limitare phpmyadmin alla tua macchina (generalmente una buona idea), allora sotto la linea ...

Allow from 127.0.0.1

..aggiungi quanto segue:

Allow from ::1

(modifica: suggerimento aggiunto da Nukeface)


1
Grazie. Questo dovrebbe essere il commento principale. Spieghi il problema, risolvilo e non introduci un'enorme vulnerabilità della sicurezza nel server di qualcuno.
obesechicken13,

1
Ho la soluzione come linea separata e aggiuntiva. Uso "la Allow from 127.0.0.1riga successiva Allow from ::1". Nel caso in cui ritorni su IPv4 (perché dimmi di disabilitare IPv6)
rkeet,


8

Ho scoperto che l'utilizzo di localhost non funzionerebbe correttamente per consentire l'accesso locale dal server. Ho dovuto usare 127.0.0.1.

In phpmyadmin.conf questo non ha funzionato:

Deny from all
Allow from localhost

questo ha funzionato:

Deny from all
Allow from 127.0.0.1

Sto usando WampServer versione 2.2


1
Questo probabilmente perché non hai un file HOSTS correttamente configurato,
impostalo

8

Per Apache 2.4.2:

In httpd.conf:

Modificare

Require local

per

Require all granted

1
Bro You Made My Day :)
droidchef,

7

Volevo eseguire il mio server online e non in localhost / 127.0.0.1 e avevo il messaggio proibito. Sto eseguendo il server WAMP 2.2 ( Apache 2.4.2 / PHP 5.4.3 / MySQL 5.5.24) su Windows 7 a 64 bit. Ciò che ha funzionato per me è il seguente:

  1. Premere l'icona WAMP di avvio nel menu
  2. Scegli la cartella Apache
  3. Scegli il file httpd.conf
  4. Nella sezione della scheda Directory (sezione con il testo "# Online -> Richiedi tutto concesso"), avevo l'opzione "Richiedi locale" che ho cambiato in "Richiedi tutto concesso"
  5. Riavvia tutti i servizi di WAMP

Ancora una volta, ha funzionato per me e da questo thread capisco che ci sono molti casi in cui potresti ricevere il messaggio di errore sopra, quindi se il mio non funziona, prova altre soluzioni.

In bocca al lupo.

(Spero che possa aiutare qualcuno come me, mi ha aiutato. Non ho trovato nessuna delle soluzioni di cui sopra che funzioni per me.)


Signore, ho risolto un problema che ho passato tutto il weekend cercando di risolvere. Grazie!
Hawk,

6

1.cambia D: \ wamp \ bin \ apache \ apache2.4.9 \ conf \ httpd.conf vicino alla linea 279

Require local 

 into 

Require all granted

2.cambiare in questo modo in D: \ wamp \ alias \ phpmyadmin.conf da uno esistente

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

3.Fare clic su Riavvia tutti i servizi in Wamp.

4. Fare clic su messo online in Wamp.

5. Ancora Fare clic per riavviare tutti i servizi in Wamp.

Spero che sia d'aiuto..


4

Ho risolto quel problema prima. Può accadere a causa di molti motivi, quindi puoi utilizzare alcuni o tutti i passaggi successivi (apertura dei file citati utilizzando qualsiasi editor di testo, come Blocco note ++ ).

Se si installa WAMP in C: \ wamp

1- Apri il file C: \ wamp \ bin \ apache \ apache2.2.22 \ conf \ httpd.conf

Nota : potresti avere una versione di Apache diversa da Apache 2.2.22 , quindi devi invece scriverla.

Cerca: Directory "C: / wamp / www /" . Troverai qualcosa di simile a questo:

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

Assicurati che Consenti da tutto esista e non sia outcommentato.

2- Apri il file C: \ wamp \ alias \ phpmyadmin.conf .

Assicurati che

<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>

Cambia Consenti da 127.0.0.1 a Consenti da tutto .

Puoi rimuovere Nega da tutto o commentarlo aggiungendo # all'inizio della riga, ma devi assicurarti che Consenti da tutto sia l'ultima riga di codice appena prima</Directory> .

Nota: potresti avere una versione diversa da phpMyAdmin 3.5.1.

Per utilizzare localhost / phpmyadmin invece di 127.0.0.1/phpmyadmin :

Apri il file C: \ wamp \ bin \ apache \ apache2.2.22 \ conf \ extra \ httpd-vhosts.conf. Aggiungi quanto segue alla fine.

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

Sta funzionando. Grazie mille.
Aj

3

La soluzione semplice sarebbe quella di trovare il file phpmyadmin.conf e quindi trovare il codice sottostante al suo interno,

<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>

Modifica "Nega da tutto" in "Consenti a tutti".

O

Segui il link seguente per capire meglio come farlo,

WAMP dice Proibito Non hai i permessi per accedere a / phpmyadmin / su questo server Windows 7 o 8

Godere :)


3

Se WampServer funziona nel computer, è installato ma non su un altro dispositivo della rete (ad es. Dal telefono) con "Non si dispone dell'autorizzazione per accedere a questo server". prova quanto segue.

1. Modifica httpd-vhosts.conf ( C:\wamp64\bin\apache\apache2.4.33\conf\extra\httpd-vhosts.conf), in questo modo:

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

2. Modifica phpmyadmin.conf ( C:\wamp64\alias\phpmyadmin.conf), quindi è simile al seguente:

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

3. Riavviare i servizi WampServer


per me applicare il passaggio 1 (e 3) è bastato. Questo non è un difetto, è di progettazione. Per ottenere i migliori pratiche vedere stackoverflow.com/questions/36810669/...
iperattivo

2

Per Apache 2.4.2 la soluzione è: in httpd.conf alla riga 265 modifica Non richiede nessuno per richiedere tutto concesso. È tutto.



2

Anche io ho affrontato lo stesso problema con il mio dominio. Se ho dato un indirizzo IP funzionava. Ma con un nome di dominio non lo era.

Poi ho controllato il mio record DNS A . Al dominio sono state assegnate più voci con diversi indirizzi IP assegnati. Ho rimosso tutti i valori sbagliati e ha funzionato. Solo un altro elenco di controllo se qualcuno affronta un problema simile.


2

Basta modificare il file "c: \ wamp \ alias \ phpmyadmin.conf"

come questo

<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/non è un file e questa domanda aveva già una soluzione accettata. Per favore, cerca di evitare le domande "aggredenti" in alto fornendo loro risposte, a meno che la domanda non sia già stata contrassegnata come risolta, o hai trovato un approccio alternativo drammaticamente migliore al problema :)
Obsidian Età

Nessuna delle soluzioni ha funzionato per me. Ho modificato il percorso corretto del file, grazie per il suggerimento.
Daniel

2

In WAMP 3.1.4 x64ho risolto l'aggiornamento del file C:\wamp64\alias\phpmyadmin.confda questo:

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>

a questa:

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 infine riavviare tutti i servizi WAMP.


1

Nel mio caso, il problema era che la versione di phpMyAdmin era stata specificata erroneamente nel phpmyadmin.conffile. Puoi verificare che:

  1. Vai su wamp / apps / phpmyadmin3.xx : nota il nome del file - quale versione stai attualmente utilizzando?

  2. Apri file wamp / alias / phpmyadmin.conf:

    Opzioni Indici FollowSymLinks MultiViews AllowOverride all Ordine nega, Consenti Consenti da tutti

Controlla che la prima riga (directory "c: /wamp/apps/phpmyadmin3.xx/") sia esattamente uguale al nome effettivo del file.

Assicurarsi che il nome del file della directory sia assolutamente corretto.


0

Quello che stava succedendo con la mia configurazione era che WAMP era vincolante per un indirizzo IPv6 (e ogni volta successiva ho reinstallato WAMP).

Per risolvere questo problema, sono entrato c:\wamp\alias\phpmyadmin.confe ho aggiunto la rigaAllow from ::1


0

Il motivo potrebbe essere 127.0.0.1 non collegato a localhost. Controlla il tuo file 'C: \ Windows \ System32 \ drivers \ etc \ hosts'. Dovrebbe avere una linea come questa:

# la risoluzione dei nomi localhost è gestita all'interno del DNS stesso.
127.0.0.1 localhost


0

Ho provato a impostare la mia password ... Ed è così che sono stato bloccato da localhost. Dovrebbero risolvere questo ...

Ad ogni modo, fai attenzione con consigli casuali. Tutti possono o meno funzionare. Ma qualche consiglio ti bloccherà ulteriormente. Quello che ha funzionato per me:

Genere "http://127.0.0.1/phpmyadmin/ " nella barra degli indirizzi.

Poi l'ho scoperto http://localhost/phpmyadmin/ funziona anche.

Tuttavia, prima di allora, per disperazione avevo ...

Ho eliminato i file, disinstallato WAMP, cancellato i cookie temporanei e installato nuovamente WAMP. Non accetta ancora "localhost" (e sono stanco dopo una giornata che prova ad accedere a WAMP), ma il 127.0.0.1 e il localhost / phpmy ... funzionano. Sono felice di rivedere la pagina. E ricomincia a lavorare.

Se leggi questa discussione fino a qui significa che probabilmente hai un grosso problema ... Windows 8, WAMP (wampserver 2.2). Mi chiedo di cosa abbia bisogno per riaccedere a localhost.


0

Nel mio caso un server WAMP era già stato installato sul mio pc, quindi quando si installa il nuovo alcuni file non sovrascritti, tutto quello che devi fare in questo caso è andare su C: \ ed eliminare l'intera cartella WAMP quindi installarlo di nuovo .


0

Verifica di aver effettuato l'accesso come root o utente con privilegi. Per sicurezza, disconnettiti e accedi nuovamente con root / no-password.


0

Se l'icona WAMP non è verde, provare: Fare clic con il tasto sinistro sull'icona WAMP> MySQL> Servizi> Installa servizio


0

Quindi tutte queste risposte sono sostanzialmente le stesse. Si rivolgono solo a un'idea: deve essere correlato al DNS . Bene, questa non è l'unica parte di ciò che risulta. Dopo molte modifiche, non riuscivo a leggere da nessuna parte la prossima "stessa risposta" sperando che potesse andare per la mia strada.

Quello che mi ha aiutato è stato quello di adattare le mie versioni di Apache . Penso che l'accordo sia stato che uno dei file di configurazione ottenga un percorso o che l'installazione dovuta a IIS potrebbe essere stata incasinata /o /o /etc. E così forzando una modifica di versione si reindirizza tutto dal firewall alle configurazioni errate.

In effetti, quando sono tornato ad Apache 2.4.2 torna a essere proibito. E non appena torno ad Apache 2.4.4 torna indietro. Ciò esclude i problemi della rete locale. Volevo solo sottolineare che tutte le risposte qui sono uguali e che sono stato in grado di uccidere il proibito modificando la versione di Apache.


0

Ho avuto lo stesso problema. Il file hosts è danneggiato! c'erano:

localhos 127.0.0.1

localhost 127.0.0.1

localhos 127.0.0.1
localhos 127.0.0.1

Il risultato è che localhostnon è definito.

Soluzione: modificare il file hosts con diritti di amministratore e correggere con una sola voce:

localhost 127.0.0.1

0

Nella versione più recente di WAMP avevo in qualche modo un "nega tutto" nel mio .htaccessfile. Se non funziona nient'altro, controlla anche lì.


0

Nel mio caso, usando Wampserver 3 64 bit versione 3.0.0, il percorso alla directory phpmyadmin4.5.2 nel file phpmyadmin.conf era errato. Per qualche motivo la directory delle app si trova nella directory degli script. Quindi ho inserito i percorsi corretti come mostrato di seguito. Quindi probabilmente dovrai riavviare Apache e ricaricare la pagina.

Ho cambiato:

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>

Per:

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>
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.