Pagina 1 di 1

AllowOverride

Inviato: gio 6 ott 2005, 13:57
da fabriBit
ciao a tutti, voglio proteggere una directory del mio sito impostando user e password..
ho creato e configurato .htacces e .htpasswd seguendo vostri consigli..

il problema penso che sia allowoverride del file httpd.conf
se allowoverride=none accedo alla directory senza user e pass (sbagliato)
se allowoverride= authConfig mi dà errore...

in var/log/apache2/errorlog
mi dice che manca un modulo auth_config, ma non credo perchè è caricato in httpd.conf....

insomma come faccio per fare in modo che per entrare nella mia directory bisogna inserire user e pass???? :)

Inviato: gio 6 ott 2005, 20:42
da strummer
ciao, credo tu debba scrivere: AllowOverride All
comunque ti copio/incollo un pezzo di un piccolo howto che ho fatto con un mio amico:

ACCESSO RISTRETTO

Creare una directory dentro htdocs e chiamiamola per esempio "mia_directory"
Creiamo dentro la directory appena creata un qualsiasi file index.html

Creiamo inoltre il file .htaccess (all'interno della dir da proteggere)
All'interno di quest'ultimo immettiamo i seguenti dati (ATTENZIONE ALLA PUNTEGGIATURA!)

AuthUserFile /usr/local/apache2/htdocs/mia_directory/.htpasswd
AuthGroupFile /dev/null
AuthName "Area ad accesso ristretto"
AuthType basic

require user username

Salvare il file

Adesso creiamo il file relativo alle password:
Creare il file .htpasswd (sempre nella directory da proteggere)
Spostiamoci nella directory BIN di apache2 e dgt il seguente comando per creare l'utente e la relativa password:

htpasswd -c username

vi chiederà una password immettetela e spostiamoci nella directory /CONF di apache2 per editare l' httpd.conf per abilitare gli accessi ristretti settando:

AllowOverride All #Togliento il None impostato di default.

restartare il webserver e andate in http://127.0.0.1/mia_directory se tutto funziona vi chiederà utente e password

ciao

Inviato: ven 7 ott 2005, 12:38
da fabriBit
strummer ha scritto:ciao, credo tu debba scrivere: AllowOverride All
comunque ti copio/incollo un pezzo di un piccolo howto che ho fatto con un mio amico:

ACCESSO RISTRETTO

Creare una directory dentro htdocs e chiamiamola per esempio "mia_directory"
Creiamo dentro la directory appena creata un qualsiasi file index.html

Creiamo inoltre il file .htaccess (all'interno della dir da proteggere)
All'interno di quest'ultimo immettiamo i seguenti dati (ATTENZIONE ALLA PUNTEGGIATURA!)

AuthUserFile /usr/local/apache2/htdocs/mia_directory/.htpasswd
AuthGroupFile /dev/null
AuthName "Area ad accesso ristretto"
AuthType basic

require user username

Salvare il file

Adesso creiamo il file relativo alle password:
Creare il file .htpasswd (sempre nella directory da proteggere)
Spostiamoci nella directory BIN di apache2 e dgt il seguente comando per creare l'utente e la relativa password:

htpasswd -c username

vi chiederà una password immettetela e spostiamoci nella directory /CONF di apache2 per editare l' httpd.conf per abilitare gli accessi ristretti settando:

AllowOverride All #Togliento il None impostato di default.

restartare il webserver e andate in http://127.0.0.1/mia_directory se tutto funziona vi chiederà utente e password

ciao
non funziona....
la directory Bin di apache2 dov'è??
in /etc/apache2 non c'è..

e poi /etc/conf non c'è...
utilizzo slackware....

il problema è la direttiva AllowOverride ..
se All non funziona e mi dà 550 Internal Server Error
se None vedo la directory ma non mi chiede user e password...

ti posto l'errore in /var/log/apache2/errorlog
Invalid command 'required' , perhaps mi spelled or defined by a module not included in the server configuration :(

Inviato: ven 7 ott 2005, 13:16
da strummer
scusami, le directory, naturalmente sono tutte minuscole e sono in:
/usr/local/apache2/ o dove hai installato l'apache!
quindi:
/usr/local/apache2/conf
/usr/local/apache2/bin
ma usi quello installato di default (che sulla 10 è apache1.3) o hai compilato il 2?

Inviato: ven 7 ott 2005, 13:32
da fabriBit
strummer ha scritto:scusami, le directory, naturalmente sono tutte minuscole e sono in:
/usr/local/apache2/ o dove hai installato l'apache!
quindi:
/usr/local/apache2/conf
/usr/local/apache2/bin
ma usi quello installato di default (che sulla 10 è apache1.3) o hai compilato il 2?
uso apache 2.0.54
comunque non trovo nè bin nè conf...

la directory di apache2 (la mia) è:
/etc/apache2/ dov'è httpd.conf

apache gira è che non risco a creare una directori limitata

Inviato: ven 7 ott 2005, 14:41
da strummer
probabilmente usi quello già installato di default nella distribuzione.
la directory, come ogni altro sito, va messa in htdocs, le directory bin e conf relative all'apache ci devono essere, come httpd.conf, altrimenti come puoi intervenire sulle direttive?
l'howto che ti ho postato, è relativo ad un'installazione di apache 2.0. 53, che una volta scompattato e compilato s'installa in /usr/local/apache2

Inviato: ven 7 ott 2005, 14:59
da fabriBit
strummer ha scritto:probabilmente usi quello già installato di default nella distribuzione.
la directory, come ogni altro sito, va messa in htdocs, le directory bin e conf relative all'apache ci devono essere, come httpd.conf, altrimenti come puoi intervenire sulle direttive?
l'howto che ti ho postato, è relativo ad un'installazione di apache 2.0. 53, che una volta scompattato e compilato s'installa in /usr/local/apache2
ora installo un altra versione...quale mi consigli? considera che posso scaricare solo da http...
hai un howto veloce???

Inviato: ven 7 ott 2005, 15:16
da strummer
Sul sito di apache ti puoi sbizzarrire, li trovi anche diversa documentazione

howto:
Si scompatta apache dentro /usr/local/src
tar xvzf httpd-2.0.53.tar.gz
dopodiche si entra dentro la directory di apache (httpd+versione) e si configura scrivendo

./configure --enable-so --enable-ssl --enable-php
make && make install

Lanciamo apache dentro /usr/apache2/local/bin/

./apachectl start|stop|restart
./httpd
./http -l # Per vedere i moduli montati

Testiamo se il webserver funziona nel browser dgt: http://localhost/

puoi anche provare la 2.0.54 e reinstallarla da sorgenti, ricordati, di levare quella di default e di far partire il serverweb dalla sua bin/ e nn da /etc/rc.d/rc.httpd, altrimenti partirebbe sempre il vecchio, a meno che nn editi correttamente etc/rc.d/rc.httpd sostituendo i giusti path
ciao