Configurazione Apache.

16 risposte [Ultimo messaggio]
Ritratto di Max66
Max66
(Geek)
Offline
Geek
Iscritto: 05/07/2009
Messaggi: 89

Scusate se posto in questa sezione, ma nella sezione dedicata ad Apache non mi permette di aprire nuovi post.
Ho installato Apache dai repo Mandriva e vorrei configurarlo in modo che la cartella di lavoro sia in home/NomeUtente/NomeSito invece di var/www.

Vorrei far funzionare il server in locale per creare siti.
Ho quindi modificato il file httpd.conf in questo modo:

  • ServerRoot "/home/NomeUtente/Nomesito"
  • DocumentRoot "/home/NomeUtente/Nomesito"
  • Directory "/home/NomeUtente/Nomesito"

Tra l'altro, dovrei anche inserire nel file httpd.conf (se non sbaglio) anche i VirtualHost per poter lavorare su siti diversi, posizionati ognuno in una sottocartella di home/NumeUtente, ma a questo ancora non sono arrivato.
Riavvio Apache ma inserendo nel browser "http://localhost" mi apre sempre il file index.html contenuto in var/www/html.
Ho saltato qualche passaggio?
Grazie in anticipo.
Mandriva 2010.0 32bit - KDE 4.3.5

Mdv 2010.2 i586 - KDE4.5.5 - Kernel 2.6.33.6-desktop-nrjpae -> INTEL Core2 Duo E7300 2,66GHz - 4GB - nVidia GeForce9500GT
Mdv 2011 x86_64 - KDE4.6.5 - Kernel 2.6.38.7-desktop-1mnb2 -> AMD Thurion X2 Ultra Dual-Core Mobile ZM-80 - 4GB - nVidia GT130M

Ritratto di Moreno
Moreno
(Guru)
Offline
Guru
Iscritto: 24/09/2004
Messaggi: 16862

Ciao

Purtroppo non ho nessuna confidenza con Apache, in compenso ti ho sistemato la sezione.

Ciao Ciao, Moreno

Addio, e grazie per tutto il pesce.
Avatar by moonlight-dream.

Ritratto di Nick78
Nick78
(Collaboratore)
Offline
Collaboratore
Iscritto: 19/01/2008
Messaggi: 1377

Prova a mettere http://localhost/nome_directory_sito nel browser. Mettendo solo localhost è normale che ti carichi il file index di apache.
Ciao ciao!!
Nicola

NiCk on Mandriva 2011 - Asus K61IC - P8700 - 4Gb Ram - KDE SC 4.6.5 - Kernel 3.0.1 - Nvidia GT_220M 1Gb - Linux registered user #496729 - www.nickworlds.it - Samsung Galaxy S3 Android 4.0.3

Ritratto di Mirko Pagliai
Mirko Pagliai
(Junior)
Offline
Junior
Iscritto: 03/06/2010
Messaggi: 13

Ciao, innanzitutto ti sconsiglio di utilizzare un percorso come:
home/NomeUtente/NomeSito
Come "cartella di lavoro" - come tu stesso dici. A guardare il nome, ne dovresti creare una per ogni "sito" su cui vuoi lavorare. Dovresti invece fare qualcosa del genere:
home/NomeUtente/cartellaarbitraria/NomeSito
Nel mio caso, la cartellaarbitraria si chiama "Server". In molti casi si crea una cartella "public_html".
Cioè quella di cui parli sembrerebbe più adatta per un virtual host piuttosto che per la server root (a meno che tu non voglia utilizzare l'intera home come server root, ma è una pessima, pessima idea).

Detto questo, ti consiglio di dare un'occhiata alla documentazione di Apache, perché devi lavorare sui file contenuti nelle cartelle sites-available e sites-enabled.

Prova così:
1) modifica il file /etc/apache2/sites-enabled/000-default
2) attiva il sito:

a2ensite default

3) riavva apache.
Ti segnalo questa guida per Debian, che grosso modo dovrebbe andar bene anche su Mandriva:
http://guide.debianizzati.org/index.php/Installare_un_ambiente_LAMP:_Linux%2C_Apache2%2C_SSL%2C_MySQL%2C_PHP5
@Nick78: quel comportamento è assolutamente normale. Se lui vuole raggiungere la DocumentRoot, come appunto vuole qui fare, deve aprire http://localhost

Ritratto di Max66
Max66
(Geek)
Offline
Geek
Iscritto: 05/07/2009
Messaggi: 89

Scusa Mirko, ma nella fretta ho "compattato" il percorso indicato; quello che volevo fare era spostare la ServerRoot in home/utente/Website/NomeSito; il VirtualHost mi serve per poter gestire più siti.

Dalla documentazione di Apache mi sembra di aver capito che le uniche modifiche da apportare erano solamente nel file httpd.conf, come specificato in apertura di post, ma forse ho tralasciato qualche pagina ... 
Tu dici: "modifica il file /etc/apache2/sites-enabled/000-default "
Io ho prelevato Apache dai repo Mandriva, nei quali i file sono tutti "apache-xxx" e non "apache2-xxx": la versione di apache nei repo Mandriva è forse "vecchiotta"? Quali pacchetti devono essere installati per il corretto funzionamento di Apache?
Credi sia meglio prelevare il pacchetto direttamente dal sito di apache?
L'obiettivo finale è quello di avere un ambiente di sviluppo in cui siano presenti LAMP e P4A.
Ogni consiglio è ben accetto.

Mdv 2010.2 i586 - KDE4.5.5 - Kernel 2.6.33.6-desktop-nrjpae -> INTEL Core2 Duo E7300 2,66GHz - 4GB - nVidia GeForce9500GT
Mdv 2011 x86_64 - KDE4.6.5 - Kernel 2.6.38.7-desktop-1mnb2 -> AMD Thurion X2 Ultra Dual-Core Mobile ZM-80 - 4GB - nVidia GT130M

Ritratto di xur
xur
(Newbie)
Offline
Newbie
Iscritto: 16/04/2010
Messaggi: 3

Ciao,
su mandriva per installare apache dovrebbe essere sufficiente selezionare il pacchetto apache-base, che si porterà dietro automaticamente le sue dipendenze, non c'è bisogno di recuperare apache dal sito ufficiale.Il percorso "/etc/apache2/..." che ti era stato riportato si riferisce alla directory di configurazione di default nei sistemi debian-based, mentre in mandriva la directory base di configurazione è /etc/httpd, all'interno della quale si trova la directory /conf e all'interno di quest'ultima per l'appunto il file httpd.conf.
Se hai editato il file httpd.conf nel modo da te descritto, riavviando apache e pulendo la cache del browser dovresti vedere il risultato della modifica...

There's no place like 127.0.0.1

Ritratto di Max66
Max66
(Geek)
Offline
Geek
Iscritto: 05/07/2009
Messaggi: 89

Citazione:


Se hai editato il file httpd.conf nel modo da te descritto, riavviando apache e pulendo la cache del browser dovresti vedere il risultato della modifica...

  
 Già, ma pur riavviando Apache, anche con browser diversi (per scongiurare la cache), continuo a vedere il file in etc/www/html/index.html.  Mah!!!
Sospetto che oltre alle modifiche da me apportate sia necessario altro, ma in rete non ho trovato molto di dettagliato, a parte questo
http://www.compago.it/index.php/manuali/35-utilita/190-configurazione-web-server-apache-virtual-host
Se quancuno a dei link da suggerire per la configurazione di Apache ...

Grazie 1000

Mdv 2010.2 i586 - KDE4.5.5 - Kernel 2.6.33.6-desktop-nrjpae -> INTEL Core2 Duo E7300 2,66GHz - 4GB - nVidia GeForce9500GT
Mdv 2011 x86_64 - KDE4.6.5 - Kernel 2.6.38.7-desktop-1mnb2 -> AMD Thurion X2 Ultra Dual-Core Mobile ZM-80 - 4GB - nVidia GT130M

Ritratto di xur
xur
(Newbie)
Offline
Newbie
Iscritto: 16/04/2010
Messaggi: 3

Prova a ripristinare la direttiva ServerRoot che hai modificato e riportarla alla situazione di default, vale a dire "/etc/httpd"..se io modifico anche quella, oltre a DocumentRoot e Directory, il riavvio di apache mi restituisce un errore, si sballa con i percorsi e non riesce più a caricare i suoi moduli. Sei sicuro che, con quella configurazione, il riavvio di Apache vada a buon fine?
Ad ogni modo, poichè dovrai lavorare con diversi virtualhost, ti conviene concentrarti direttamente sulla configurazione degli stessi e non badare più di tanto alla configurazione della DocumentRoot di default del server.Il link che hai postato sembra abbastanza chiaro, la documentazione più esauriente la trovi però direttamente sul sito di apache:
http://httpd.apache.org/docs/2.0/
In sostanza, lasciando stare configurazioni più avanzate ed esotiche, per la configurazione di ogni singolo virtualhost devi compiere due passaggi:
1 - aggiungere al file /etc/httpd/conf/vhost.d/00_default_vhost.conf un blocco simile a questo:

<VirtualHost xxxx:80>
&nbsp;&nbsp; &nbsp;ServerName xxxx
&nbsp;&nbsp; &nbsp;DocumentRoot /var/www/xxxx
&nbsp;&nbsp; &nbsp;# normal vhost configs
&nbsp;&nbsp; &nbsp;<Directory /var/www/xxxx>
&nbsp;&nbsp; &nbsp; &nbsp;Options -All -Multiviews
&nbsp;&nbsp; &nbsp; &nbsp;AllowOverride None
&nbsp;&nbsp; &nbsp; &nbsp;Order deny,allow
&nbsp;&nbsp; &nbsp; &nbsp;Allow from all
&nbsp;&nbsp; &nbsp;</Directory>
</VirtualHost

 sostituendo i percorsi ed i nomi xxxx con quelli che intendi utilizzare.All'interno di questo blocco potrai poi impostare delle direttive specifiche per ogni host che andranno a sovrascrivere quelle di default del file httpd.conf. (ad es. in questo caso io ho già impostato la direttiva "Allow from all" per rendere raggiungibile la directory da qualsiasi altro indirizzo.)Per tutte le direttive non specificate qui, varranno le impostazioni di default del suddetto file.
2 - editare il file /etc/hosts aggiungendo una nuova riga simile a questa
127.0.0.1 xxxx
Per ogni virtualhost configurato infatti apache si aspetta di trovare una corrispondenza con lo stesso nome anche in questo file.
Fatto questo, riavvia apache e se non ti restituisce errori l'host virtuale sarà raggiungibile semplicemente digitando il suo nome nella barra degli indirizzi del browser.
Spero di averti chiarito un pò le idee..fammi sapere e chiedi pure se hai bisogno.

There's no place like 127.0.0.1

Ritratto di tom2004
tom2004 (non verificato)
()

Citazione:

1 - aggiungere al file /etc/httpd/conf/vhost.d/00_default_vhost.conf un blocco simile a questo:

&nbsp;&nbsp; &nbsp;ServerName xxxx
&nbsp;&nbsp; &nbsp;DocumentRoot /var/www/xxxx
&nbsp;&nbsp; &nbsp;# normal vhost configs
&nbsp;&nbsp; &nbsp;
&nbsp;&nbsp; &nbsp; &nbsp;Options -All -Multiviews
&nbsp;&nbsp; &nbsp; &nbsp;AllowOverride None
&nbsp;&nbsp; &nbsp; &nbsp;Order deny,allow
&nbsp;&nbsp; &nbsp; &nbsp;Allow from all
&nbsp;&nbsp; &nbsp;
  

 

direi che invece di aggiungere nuove righe a quel file sia meglio creare nella stessa cartella nuovi file con estensione .conf con dentro quelle righe (ad es: miosito.conf).
Facendo cosi' si evitano problemi quando si aggiorna apache

Ciao Smile
Tom

Ritratto di xur
xur
(Newbie)
Offline
Newbie
Iscritto: 16/04/2010
Messaggi: 3

Citazione:

Citazione:


direi che invece di aggiungere nuove righe a quel file sia meglio creare nella stessa cartella nuovi file con estensione .conf con dentro quelle righe (ad es: miosito.conf).


Si, in effetti questo sarebbe l'approccio più professionale..la mia soluzione era un pò più "sbrigativa"!

There's no place like 127.0.0.1

Ritratto di Max66
Max66
(Geek)
Offline
Geek
Iscritto: 05/07/2009
Messaggi: 89

Sono sul punto di gettare il PC dalla finestra, ma forse mi devo buttare io!!
Allora ho reinstallato di nuovo LAMP dai repo Mandriva (il pacchetto giusto è task-lamp)
Lascio la ServerRoot di default e modifico solo la DocumentRoot da "/var/www" a "/home/max/server" ottengo un bel error 403; sulla cartella server ho i permessi a 777.
Non parliamo dei virtualHost, almeno per ora...
EDIT: stamattina all'avvio del PC ho avuto un bel 'kernel panic': risolto riavviando con un vecchio kernel ancora installato.
Comincio ad aprire la finestra ...

Mdv 2010.2 i586 - KDE4.5.5 - Kernel 2.6.33.6-desktop-nrjpae -> INTEL Core2 Duo E7300 2,66GHz - 4GB - nVidia GeForce9500GT
Mdv 2011 x86_64 - KDE4.6.5 - Kernel 2.6.38.7-desktop-1mnb2 -> AMD Thurion X2 Ultra Dual-Core Mobile ZM-80 - 4GB - nVidia GT130M