ora sto tribulando con apache, perchè non mi vuole eseguire gli script... errore 403 Forbidden
ora sto tribulando con apache, perchè non mi vuole eseguire gli script... errore 403 Forbidden
Ultima modifica di radioradianti : 25-09-2005 alle ore 23.43.25
questioni di permessi.... Hai dato il permesso di lettura ai tuoi file php??
già risolto... si comunque era per i permessi... ero ancora in ottica windows... dove tutto e di tutti e soprattutto di bill
comunque rimane un problemino, quando creo un nuovo file nella cartella /var/www/html che sarebbe quella di default di apache, i file non mi prendono i permessi 777 ma di sola lettura da parte di root e del mio utente... quindi non posso scriverli (anche se li ho creati io -) e tanto meno eseguirli... come posso dirgli di settare SEMPRE i permessi su 777 in quella cartella a tutti i file?
Ultima modifica di neoscript : 12-09-2005 alle ore 21.42.13
Sinceramente mi cogli impreparato.....In teoria se l'utente X crea un file dovrebbe avere tutti i permessi sul sopraccitato file.... Se invece lo crei da Root allora dovresti avere solo i permessi di lettura con qualsiasi altro utente.
Quindi se tu fai girare apache come utente X non dovresti avere problemi di permessi.... Se invece fai girare apache (o il web server che utilizzi) come utente root (cosa altamente sconsigliata e per motivi di sicurezza) allora probabilmente avrai solo i permessi di lettura come utente X.
P.s.: Ho dato per scontato che con "creare file" intendessi file creati via script php e quindi generati dal web server... se non è così chiedo venia.
Ultima modifica di madbad : 13-09-2005 alle ore 18.32.22
quando creo un file prende i permessi 600... cioè lettura, scrittura ma non esecuzione dall'utente...
Utente: Lettura, Scrittura, No esecuzione
Gruppo: No lettura, No scrittura, No esecuzione
Altri: No lettura, No scrittura, No esecuzione
questi sono i permessi che imposta linux se creo il file a mano...
invece quando lo creo con php, prende come utente apache e gruppo apache, quindi se lo eseguo io con il mio utente non funziona...
come posso risolvere?
@edit: che parametri devo mettere a chown per impostare i permessi sulla cartella o file e su tutti i file o cartelle in essa contenuti?
Ultima modifica di neoscript : 13-09-2005 alle ore 22.01.30
Quando crei un file, i permessi sono decisi in base all'umask. Se vuoi che i file che crei siano leggibili a tutti gli utenti del tuo sistema, allora dai il comandoOriginalmente inviato da neoscript
umask 022
prima di creare i file in questione. Ad es. puoi metterlo nel file ~/.bashrc
In PHP c'è il comando chmod. Puoi usarlo per permettere a tutti di leggere quei file.invece quando lo creo con php, prende come utente apache e gruppo apache, quindi se lo eseguo io con il mio utente non funziona...
come posso risolvere?
http://www.php.net/manual/it/function.chmod.php
Per ulteriori informazioni,
man chmod
man bash (e cerca umask)
@edit: che parametri devo mettere a chown per impostare i permessi sulla cartella o file e su tutti i file o cartelle in essa contenuti?
- a chown puoi dare come parametri sia directory sia file
- l'opzione -R (``recursive'') agisce su tutti i file e le sottodirectory
- man chmod contiene tutte queste risposte! :-P
- solo root può cambiare a piacimento i proprietari dei file
non riesco a farli funzionare i permessi...
ho impostato l'utente phpwriter e il gruppo root, ho provato anche come gruppo apache... ma nulla... mi dice che non ho il permesso
ma quando installo apache, non dovrebbe avere già i permessi impostati per permettermi di navigare e di eseguire gli script con qualsiasi utente?
Ahem... chi ti dice cosa? (non è chiarissimo come l'hai scritto...)Originalmente inviato da neoscript
- Apache ti dice che non ha il permesso di eseguire lo script?
- chmod (nello script) ti dice che non ha il permesso di funzionare?
- chmod (da utente) ti dice che non ha il permesso di funzionare?
- ..altro?
Quando installi Apache, viene configurato un utente apposta per lui, che di solito si chiama apache, wwwrun o qualcosa del genere. In questo modo, se qualcuno ti ``buca'' Apache, si ritrova non con i privilegi di root, ma di quell'utente, che è ``limitato'' di proposito.ma quando installo apache, non dovrebbe avere già i permessi impostati per permettermi di navigare e di eseguire gli script con qualsiasi utente?
Se vuoi che apache veda i tuoi file, devi renderli leggibili a tale utente (chown) oppure a tutti (chmod a+r). Inoltre, le directory che li contengono, a partire dalla root, devono essere tutte leggibili ed ``eseguibili''.
Ad esempio, se i tuoi documenti stanno in /home/neoscript/public_html/antani/ allora tutte queste directory devono avere gli attributi ``r'' e ``x'' settati per ``others''.
ora ho capito :D
io a partire da root fino ad arrivare a html ho settato, utente phpwriter e gruppo root... quindi devo farlo diventare utente phpwriter e gruppo apache?
la cosa che mi chiedo, è perchè se apache deve lavorare su quelle dir non se le setta da solo... cioè quelle cartelle sono "sue" nel senso che ci deve lavorare su... e non capisco perchè non siano settate in automatico con quei privilegi... comunque ora provo a settarle come dici te e vediamo se ha voglia di funzionare
allora, ho risolto modificando tutti i permessi a partire dalla root fino alla cartella html... ho scaricato il phpMyAdmin per provare Mysql, ma quando vado ad eseguire il file index.php non ne vuole sapere... ho settato tutti i permessi come le altre cartelle ma mi da sempre 403 Forbidden...
come mai?
Quindi in parte hai risolto il problema...?Originalmente inviato da neoscriptÈ per forza un problema di permessi (penso). Tutti i file e tutte le directory di phpMyAdmin devono essere leggibili dall'utente di apache.ho scaricato il phpMyAdmin per provare Mysql, ma quando vado ad eseguire il file index.php non ne vuole sapere... ho settato tutti i permessi come le altre cartelle ma mi da sempre 403 Forbidden...
si in parte si, ma continuo a non poter accedere alla cartella di phpMyAdmin anche se i permessi sono corretti 777 e utente phpwriter gruppo apache... identici a quelli fuori alla cartella...
non gli piace la cartella di phpmyadmin... non riesco a capire il perchè... ho copiato tutti i file di phpmyadmin in un'altra cartella e funziona, ma se la cartella si chiama phpmyadmin non funziona mi prende in giro?!
ho eliminato la cartella originale di phpmyadmin, ho spostato i file, l'ho messi in una nuova cartella, ho eliminato quella vecchia, ho rinominato la nuova come la vecchia è funziona
ora, quando apro il browser in localhost ( http://localhost/ ), mi esce la pagina di default di fedora...
Screen
sono andato a modificare il file che mi dice in quella pagina, commentanto le voci dentro....
ma continua ad uscire... come la levo e faccio partire la pagina di apache che mi visualizza tutti i file dalla root in su?Codice:# # This configuration file enables the default "Welcome" # page if there is no default index page present for # the root URL. To disable the Welcome page, comment # out all the lines below. # #<LocationMatch "^/+$"> # Options -Indexes # ErrorDocument 403 /error/noindex.html #</LocationMatch>
grazie ancora per la pazienza che hai dimostrato
Ultima modifica di neoscript : 23-09-2005 alle ore 20.48.14
Probabilmente qualche permesso che ti era sfuggito... boh!Originalmente inviato da neoscript
Per scegliere quale pagina corrisponde a http://localhost devi modificare l'opzione "DocumentRoot" nei file di configurazione di Apache.ora, quando apro il browser in localhost ( http://localhost/ ), mi esce la pagina di default di fedora...
Figurati! ;-)grazie ancora per la pazienza che hai dimostrato
quindi il file welcome.conf lo rimetto come era... ma come faccio a dirgli che deve creare la pagina di default di apache?... Screen
Ultima modifica di neoscript : 24-09-2005 alle ore 11.56.57
Che cosa intendi per ``pagina default di apache''? :-?Originalmente inviato da neoscript
ho messo lo screen appositamente
Se ti riferisci alla root, allora dovresti mettere come indirizzo "/" dentro DocumentRoot. Devi anche assicurarti che l'accesso a tale directory sia permesso, cioè ci deve essere una sezione <Directory "/"> con le impostazioni giuste.Originalmente inviato da neoscript
Ma questo procedimento potrebbe non funzionare comunque: _non_ è una buona idea avere il server web che serve al mondo esterno tutto il tuo disco rigido. Probabilmente nei file di configurazione di apache ci sono altre opzioni che evitano proprio questa possibilità.
forse non mi sono spiegato correttamente, quella root li è la root della cartella di apache ( /var/www/html/ ) non la root di sistema... a me serve che li mi faccia vedere tutti i file che sono contenuti nella cartella html...
ho controllato nel httpd.conf ma li è settata giusta (DocumentRoot "/var/html/www/") quindi non capisco dove devo andargli a dire di listarmi il contenuto della cartella invece che la pagina di default di apache con fedora
Allora la prossima volta non cancellare i nomi dei file, così magari si capisce meglio! :-POriginalmente inviato da neoscript
Prova a cancellare o rinominare il file index.html. E forse devi anche ri-commentare quella parte che avevi commentato all'inizio.
Se index.html o index.php esistono, allora vengono visualizzati. Altrimenti Apache ti fa vedere il contenuto della directory, oppure ti dà errore 403 (ed è il discorso che facevi prima).ho controllato nel httpd.conf ma li è settata giusta (DocumentRoot "/var/html/www/") quindi non capisco dove devo andargli a dire di listarmi il contenuto della cartella invece che la pagina di default di apache con fedora
scusami, ma non ci avevo pensato...
cmq ora provo a fare quello che mi dici
Discussione divisa da "Nuovamente su linux :D"
Ciao
Leandro
Happy Slack!
E' on line il numero 12 di Topolinux - Totalmente rinnovato!
TopoLinux è anche chat! irc.azzurra.org canale #topolinux
La semplicità di questo dono è inversamente proporzionale alla qualità della nostra amicizia
Allora, che ci dici? Funziona? :-)Originalmente inviato da neoscript
ho rimesso il file welcome.conf come era prima, ho aperto il browser nella root di /var/www/html/... non ho messo nessun file index e continua a uscire sempre quella pagina...
Probabilmente il file index c'era già, e dovresti toglierlo. E ri-commentare quella roba che avevi commentato all'inizio.Originalmente inviato da neoscript
Se così non è, allora non so che dirti. :-( (a parte fare click sul pulsante ``reload'' del tuo browser, ma quello è scontato).