2011-12-07 11 views
44

Provo a configurare il progetto kohana 3 come host virtuale.client negato dalla configurazione del server

Config:

<VirtualHost *:80> 
    DocumentRoot "D:/Devel/matysart/matysart_dev1" 
    ServerName matysart-one.local 
    ServerAlias www.matysart-one.local 
    DirectoryIndex index.php 
</VirtualHost> 

Error (403):

[client 127.0.0.1] client negata dalla configurazione del server: D:/Devel/matysart/matysart_dev1/

Qualcuno potrebbe aiutare?

+0

Questo errore si verifica solo se: l'indirizzo del client corrisponde 127.0.0.0/8 o l'indirizzo del client è :: 1 o sia il client che l'indirizzo del server della connessione sono gli stessi. Questa è una nuova funzionalità che è stata aggiunta ad Apache 2.4. In breve, se stai testando questo sul tuo host locale assicurati che sia impostato questo flag "Richiedi locale". Non è tuttavia necessario per il server di produzione –

+0

possibili duplicati di [Apache2: 'AH01630: client negato dalla configurazione del server'] (http://stackoverflow.com/questions/18392741/apache2-ah01630-client-denied-by-server -Configurazione) –

risposta

85

Nel mio caso, ho modificato il tag di directory.

Da

<Directory "D:/Devel/matysart/matysart_dev1"> 
    Allow from all 
    Order Deny,Allow 
</Directory> 

Per

<Directory "D:/Devel/matysart/matysart_dev1"> 
    Require local 
</Directory> 

Ed è seriamente funzionato. Sembra cambiato con Apache 2.4.2.

+0

Grazie. Ho fatto un piccolo aggiornamento al mio server di sviluppo e i miei progetti sono andati giù. "Require local" ha fatto miracoli per me :) – Stef

+1

Prego. – Neutralizer

+0

Cheers! Dopo un'ora di gioco con Deny, Allow Require local è un salvavita. –

17

L'errore "client negato dalla configurazione del server" generalmente indica che da qualche parte nella configurazione sono le direttive Allow from e Deny from che impediscono l'accesso. Leggi la documentazione mod_authz_host per maggiori dettagli.

Si dovrebbe essere in grado di risolvere questo nel vostro VirtualHost con l'aggiunta di qualcosa di simile a:

<Location /> 
    Allow from all 
    Order Deny,Allow 
</Location> 

Oppure, in alternativa, con una direttiva Directory:

<Directory "D:/Devel/matysart/matysart_dev1"> 
    Allow from all 
    Order Deny,Allow 
</Directory> 

Alcune indagini dei file di configurazione di Apache probabilmente girare restrizioni predefinite sul DocumentRoot predefinito.

+1

Per me il seguente lavorato che viene copiato da esempio in '/ etc/apache2/apache2.conf':' Options Indexes FollowSymLinks AllowOverride None necessitano di tutte concesso ' –

+0

@DanielSokolowski - questo ha funzionato anche per me, grazie mille :) – null

+0

grazie, questo funziona anche per me – rheese

26

Per me il seguente lavorato che viene copiato da esempio nel /etc/apache2/apache2.conf:

<Directory /srv/www/default> 
    Options Indexes FollowSymLinks 
    AllowOverride None 
    Require all granted 
</Directory> 

Require all granted opzione è la soluzione per il primo esempio problema in wiki.apache.org pagina dedicata a questo problema per Apache versione 2.4+.

Ulteriori dettagli sull'opzione Richiedi sono disponibili su official apache page for mod_authz module e su this page too. Vale a dire:

Richiedi tutto concesso -> L'accesso è consentito incondizionatamente.

+0

Questo ha funzionato sulla mia installazione locale/home/userx/Sviluppo/sito –

0

Questo mi è capitato più volte di migrare da Apache 2.2.

Quello che ho trovato è che esiste un ordine, negare che mi sia mancato con la funzione di ricerca di VIM in qualche modo che è il Vhost principale predefinito, linea 379. Spero che questo aiuti qualcuno. Ho commentato l'ordine Negare, consentire e negare tutto e ha funzionato!

0

questo ha funzionato per me ..

<Location /> 
Allow from all 
Order Deny,Allow 
</Location> 

ho incluso questo codice nel mio /etc/apache2/apache2.conf

Problemi correlati