Sistema LAMP

Nei giorni in cui vi prende l'ispirazione hi-tech...prendete in mano la tastiera e sfogatevi qui!

Moderatori: cb_123, tonertemplum

Sistema LAMP

Messaggiodi diegofio il 19 feb 2008, 00:50

Siccome stasera mi è capitato di farlo vi posto una breve guida per costruire/configurare/testare il funzionamento di un sistema LAMP.
Preciso che la guida non è mia ma ho solo messo qualche aggiunta. in realtà è un copia incolla di guide trovate in rete da html.it e documentazione di ubuntu.

Identifichiamo i pacchetti necessari:
* apache2-mpm-prefork è il webserver,
* libapache2-mod-php5 è il modulo PHP5 per Apache 2,
* mysql-server è il server MySQL che installerà anche le librerie necessarie e il client MySQL,
* php5-mysql è l'interfaccia MySQL di PHP,
* php5-gd è un'estensione di PHP5 che consente di manipolare le immagini con le librerie GD.
I file di configurazione di Apache si trovano in /etc/apache2. Il file di configurazione di PHP è /etc/php5/apache2/php.ini. L'accesso a MySQL avviene tramite l'utente root, con password vuota. La DocumentRoot per default è la directory /var/www.
--------------------------------------------------------------------------------------------------------------------------
Apache dovrebbe già essere in esecuzione, per sicurezza riavviarlo:
sudo /etc/init.d/apache2 restart
Controllare che nella pagina di verifica (http://127.0.0.1/apache2-default oppure http://127.0.0.1/) venga visualizzata la scritta «It Works!», la quale appunto indica che apache funziona correttamente.
--------------------------------------------------------------------------------------------------------------------------
Per verificare il corretto funzionamento di PHP creare un file di prova nella nella propria DocumentRoot, che di Default è /var/www.
Con l'editor di testo preferito e con i privilegi di amministrazione creare il file /var/www/info.php e inserirci all'interno la seguente riga:
<?php phpinfo(); ?>
Salvare il file e recarsi all'indirizzo http://localhost/info.php.
--------------------------------------------------------------------------------------------------------------------------
MySQL viene installato con un utente fittizio root e un campo password vuoto. Potrebbe essere utile cambiare la password a MySQL, in tal caso digitare da terminale
sudo mysql
E successivamente digitare:
mysqladmin -u root -p
Con la propria passwordpersonale.
Nel caso vogliate entrare con un utente di altro nome digitate (all'interno di mysql come root) la stringa
CREATE USER nomeutente@localhost IDENTIFIED BY 'password'
dopo di ciò (usciti da mysql come root) potete entrare con il nuovo utente digitando
mysql -u diego -p
senza il "-p" se non avete messo la parte "IDENTIFIED BY 'password'", in tal caso l'utente non avrà password di accesso.
--------------------------------------------------------------------------------------------------------------------------
PHP funziona, MySQL funziona, ma i due strumenti riescono a collaborare? Per esserne certi, dobbiamo assicurarci che l'estensione PHP per MySQL (il pacchetto php-mysql o php5-mysql) sia correttamente caricata. Normalmente non ci sono problemi, il tutto viene gestito in automatico quando installiamo i pacchetti, ma la verifica da effettuare è relativamente semplice e ci può togliere un eventuale dubbio.
Creiamo uno script PHP che esegue semplicemente la connessione a MySQL e la selezione del database di test (un database inizialmente vuoto, accessibile a qualsiasi utente, utilizzabile appunto per i test, che andrebbe comunque eliminato se il server MySQL viene messo in produzione).
<?php
// Connessione a MySQL
$link = mysql_connect('localhost', 'root', '') or die('Connessione fallita: ' . mysql_error());
// Selezione database di test
mysql_select_db('test') or die('Selezione DB fallita: ' . mysql_error());
// E' tutto ok, chiudo la connessione
echo 'OK';
mysql_close($link);
?>
Il file va salvato con estensione .php all'interno della DocumentRoot di Apache, ad esempio con nome "testdb.php", e va richiamato da browser digitando l'indirizzo http://localhost/testdb.php. Se tutto va per il verso giusto, otterremo un rassicurante "OK" sul nostro monitor. In caso contrario, uno dei possibili errori potrebbe essere:
---------------------------------------------------------------------------------------------------------------------------


CONTRIBUTI AGGIUNTIVI (grazie a dannyb78)

configurare un mail server con exim
configurare un server ftp con vsftpd

FUNZIONE setlocale() su ubuntu 7.10 e accesso al vostro webserver mediante IP dinamico
Codice: Seleziona tutto
Inoltre riporto una particolarità riscontrata nei sistemi ubuntu per chi usa la funzione setlocale(), per localizzare funzioni tipo strftime().

1) poichè il vostro server non riconosce la stringa "it,IT" ma "it,IT.utf8" per far girare le pagine sul vostro server di prova ma renderle compatibili anche con il server che le andrà ad ospitare una volta pubblicate conviene usare questa stringa

    setlocale(LC_TIME, "it_IT", "it", "it_IT.utf8");



2) opzionale: installare il proprio linguaggio:

    if your server is an ubuntu (debian like)
    you need to install the locales you want (default is english and your language) go to aptitude and install -language-pack-*-base it will resolve dependencies and will try to install a suggested package, remove it if you don't care and proceed.



infine un suggerimento per chi, come me, ha un webserver in casa per fare le prove ed ha necessità di lavorare da fuori o di collaborare con altre persone:
registratevi un dominio dinamico su http://www.dyndns.org, il servizio è gratuito. Scaricate anche il tool gratuito DynDNS updater e installatelo sul webserver. Questo vi consentirà di conoscere sempre l'ip (dinamico) del vostro pc di casa e di potervi accedere con facilità.



ULTERIORI REFERIMENTI

Manuale ufficiale Mysql
Manuale ufficiale di PHP
diegofio
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 9270
Iscritto il: 29 lug 2005, 09:55

 

Re: Sistema LAMP

Messaggiodi Galai il 19 feb 2008, 09:43

ecco qua un'ottma cosa utile di certo, ma totalmente oscura per me... cosìè un sisteme LAMP?
Sempre in Rete.....There is no place like 127.0.0.1

AmdPlanet ha bisogno di te    

World Community Grid AMD Planet Team

La Romagna suona.. L'Italia balla

Carica le tue foto su PixDiff il nuovo servizio di Hosting & Upload by AmdPlanet

Tutti dicono che sono una persona orribile....ma non è vero....Ho il cuore di un ragazzino.......in un vaso sulla scrivania!!!!


Immagine
Avatar utente
Galai
Moderatore
Moderatore
 
Messaggi: 12521
Iscritto il: 29 ago 2005, 14:11
Località: Cesena

Re: Sistema LAMP

Messaggiodi dannyb78 il 19 feb 2008, 09:52

Ciao Diego, se cerchi tra i miei post in linux troverai alcune miniguide che potresti linkare alla fine della tua, una per configurare un server ftp e unaper un server mail, entrambi molto utili se si ha intenzione di installare un webserver per i test. Inoltre riporto una particolarità riscontrata nei sistemi ubuntu per chi usa la funzione setlocale(), per localizzare funzioni tipo strftime().

1) poichè il vostro server non riconosce la stringa "it,IT" ma "it,IT.utf8" per far girare le pagine sul vostro server di prova ma renderle compatibili anche con il server che le andrà ad ospitare una volta pubblicate conviene usare questa stringa
setlocale(LC_TIME, "it_IT", "it", "it_IT.utf8");


2) opzionale: installare il proprio linguaggio:
if your server is an ubuntu (debian like)
you need to install the locales you want (default is english and your language) go to aptitude and install -language-pack-*-base it will resolve dependencies and will try to install a suggested package, remove it if you don't care and proceed.


infine un suggerimento per chi, come me, ha un webserver in casa per fare le prove ed ha necessità di lavorare da fuori o di collaborare con altre persone:
registratevi un dominio dinamico su http://www.dyndns.org, il servizio è gratuito. Scaricate anche il tool gratuito DynDNS updater e installatelo sul webserver. Questo vi consentirà di conoscere sempre l'ip (dinamico) del vostro pc di casa e di potervi accedere con facilità. Per esempio se volete vedere il mio webserver dovete andare su h**p://dannyb78.homeip. net. Idem per collegarsi in ftp si usa l'host dannyb78.homeip.net. Comodo vero? (PS in questo periodo il mio server è generalmente spento, quindi se volete vedere il mio lavoro andate su [url="www.mtb-cecina.it"]www.mtb-cecina.it[/url] e non sul sito sopra indicato.

@galai: un webserver basato su tecnologia php-mysql
CM Cosmos S | CM Pro Real Power 1000W | ASUS P6T6 WS Revolution | intel i7 965 extreme | CM V8 | Corsair DHX 1600C8 6*2GB | ASUS EAH4870X2 | Creative X-Fi Titanium Fatal1ty Champion Series | WD Velociraptor 300 +Seagate 1,5TB | ASUS Bluray BC-08B1ST | NZXT Sentry LX | Panasonic TH-D42PT84

MTB CLUB CECINA - XII GRANFONDO COSTA DEGLI ETRUSCHI - Marina di Bibbona ||| Foto edizione 2009!!!
Avatar utente
dannyb78
Luce delle stelle
Luce delle stelle
 
Messaggi: 2648
Iscritto il: 26 giu 2005, 16:33
Località: Cecina

Re: Sistema LAMP

Messaggiodi dannyb78 il 19 feb 2008, 10:11

Ultima modifica di dannyb78 su 19 feb 2008, 20:02, modificato 1 volte in totale.
CM Cosmos S | CM Pro Real Power 1000W | ASUS P6T6 WS Revolution | intel i7 965 extreme | CM V8 | Corsair DHX 1600C8 6*2GB | ASUS EAH4870X2 | Creative X-Fi Titanium Fatal1ty Champion Series | WD Velociraptor 300 +Seagate 1,5TB | ASUS Bluray BC-08B1ST | NZXT Sentry LX | Panasonic TH-D42PT84

MTB CLUB CECINA - XII GRANFONDO COSTA DEGLI ETRUSCHI - Marina di Bibbona ||| Foto edizione 2009!!!
Avatar utente
dannyb78
Luce delle stelle
Luce delle stelle
 
Messaggi: 2648
Iscritto il: 26 giu 2005, 16:33
Località: Cecina

Re: Sistema LAMP

Messaggiodi diegofio il 19 feb 2008, 10:53

ho aggiunto nel primo post grazie mille
diegofio
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 9270
Iscritto il: 29 lug 2005, 09:55

Re: Sistema LAMP

Messaggiodi dannyb78 il 19 feb 2008, 11:48

Grazie a te, ce ne fosse di gente che lavora così. ;-)

Se trovo un minuto di tempo scrivo una miniguida per phpmyadmin, strumento essenziale per gestire i database in unsistema lamp.

Se lo ritieni opportuno puoi linkare anche il manuale ufficiale di php, molte pagine sono tradotte in ita, io consiglio di usarel 'originale in inglese che è più accurato come linguaggio.

Idem per la documentazione su mysql, per la quale metterei il link alla pagina di risorseda cui è possibile scaricare o visualizzare i manuali della versione di mysql installata sul proprio sistema.
Ultima modifica di dannyb78 su 19 feb 2008, 20:01, modificato 1 volte in totale.
CM Cosmos S | CM Pro Real Power 1000W | ASUS P6T6 WS Revolution | intel i7 965 extreme | CM V8 | Corsair DHX 1600C8 6*2GB | ASUS EAH4870X2 | Creative X-Fi Titanium Fatal1ty Champion Series | WD Velociraptor 300 +Seagate 1,5TB | ASUS Bluray BC-08B1ST | NZXT Sentry LX | Panasonic TH-D42PT84

MTB CLUB CECINA - XII GRANFONDO COSTA DEGLI ETRUSCHI - Marina di Bibbona ||| Foto edizione 2009!!!
Avatar utente
dannyb78
Luce delle stelle
Luce delle stelle
 
Messaggi: 2648
Iscritto il: 26 giu 2005, 16:33
Località: Cecina

Re: Sistema LAMP

Messaggiodi thrantir il 19 feb 2008, 11:53

Galai ha scritto:ecco qua un'ottma cosa utile di certo, ma totalmente oscura per me... cosìè un sisteme LAMP?


Linux
Apache
MySQL
PHP

si indica con LAMP la piattaforma composta da queste componenti. Si contrappone a

Windows
IIS
Access
ASP

decisamente meno usata

Un'altra possibilità è

Windows
Apache
MySQL
PHP

credo che queste 3 siano di fatto le uniche piattaforme su cui si sviluppa nelle modalità classiche
Fletto i muscoli e sono nel vuoto
Principi di architettura degli eleboratori
X postare immagini
-----BEGIN GEEK CODE BLOCK-----
GCS/IT/L/MU d- s: a C++$>+++ UL+>++ P L+++>++++ E--- W++ N++>+++ o+>++ K? w O-- M- VMS? V- PS++ Y+ PGP+ t 5? X+ R++>+++ tv+ b+++>++++ DI+++ D++ G e++ h- r++ y++
------END GEEK CODE BLOCK------
Addio Dani, sono più ricco perchè ti ho conosciuto
Avatar utente
thrantir
Moderatore
Moderatore
 
Messaggi: 8897
Iscritto il: 27 mag 2003, 13:32
Località: Pisa

Re: Sistema LAMP

Messaggiodi diegofio il 19 feb 2008, 12:06

dannyb78 ha scritto:Grazie a te, ce ne fosse di gente che lavora così. ;-)

Se trovo un minuto di tempo scrivo una miniguida per phpmyadmin, strumento essenziale per gestire i database in unsistema lamp.

Se lo ritieni opportuno puoi linkare anche il [url="http://it2.php.net/manual/it/index.php"]manuale ufficiale di php[/url], molte pagine sono tradotte in ita, io consiglio di usarel 'originale in inglese che è più accurato come linguaggio.

Idem per la documentazione su mysql, per la quale metterei il link [url="http://dev.mysql.com/doc/"]alla pagina di risorse[/url]da cui è possibile scaricare o visualizzare i manuali della versione di mysql installata sul proprio sistema.



ORO FATTO
diegofio
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 9270
Iscritto il: 29 lug 2005, 09:55

Re: Sistema LAMP

Messaggiodi paperina il 19 feb 2008, 13:04

thrantir ha scritto:
Galai ha scritto:ecco qua un'ottma cosa utile di certo, ma totalmente oscura per me... cosìè un sisteme LAMP?


Linux
Apache
MySQL
PHP

si indica con LAMP la piattaforma composta da queste componenti.


penso sia chiaro come vengono utilizzati queste componenti in un server web, comunque per completezza:
Apache è il server web vero e proprio, che si preoccupa di porre un socket in ascolto,, ricevere le richieste e inviare le risposte
MySql è il database dove vengono salvati tutti i dati necessari, configurabili da web, tipo gli account...
Il PHP è utilizzato per costruire le pagine web e per effettuare le query al database...

Se ho sbagliato qualcosa, ogni correzione o precisazione è ben gradita :)
Muore lentamente chi evita una passione...
Avatar utente
paperina
Saggio del pianeta
Saggio del pianeta
 
Messaggi: 526
Iscritto il: 20 set 2006, 17:55
Località: pisa

Re: Sistema LAMP

Messaggiodi Galai il 19 feb 2008, 14:43

ok raga grazie a tutti delle spiegazioni.. ora la cosa è decisamente più chiara :D
Sempre in Rete.....There is no place like 127.0.0.1

AmdPlanet ha bisogno di te    

World Community Grid AMD Planet Team

La Romagna suona.. L'Italia balla

Carica le tue foto su PixDiff il nuovo servizio di Hosting & Upload by AmdPlanet

Tutti dicono che sono una persona orribile....ma non è vero....Ho il cuore di un ragazzino.......in un vaso sulla scrivania!!!!


Immagine
Avatar utente
Galai
Moderatore
Moderatore
 
Messaggi: 12521
Iscritto il: 29 ago 2005, 14:11
Località: Cesena

Re: Sistema LAMP

Messaggiodi thrantir il 19 feb 2008, 15:39

paperina ha scritto:
thrantir ha scritto:
Galai ha scritto:ecco qua un'ottma cosa utile di certo, ma totalmente oscura per me... cosìè un sisteme LAMP?


Linux
Apache
MySQL
PHP

si indica con LAMP la piattaforma composta da queste componenti.


penso sia chiaro come vengono utilizzati queste componenti in un server web, comunque per completezza:
Apache è il server web vero e proprio, che si preoccupa di porre un socket in ascolto,, ricevere le richieste e inviare le risposte
MySql è il database dove vengono salvati tutti i dati necessari, configurabili da web, tipo gli account...
Il PHP è utilizzato per costruire le pagine web e per effettuare le query al database...

Se ho sbagliato qualcosa, ogni correzione o precisazione è ben gradita :)


proprio per compeltezza: Linux è il sistema operativo (quello serio :mrgreen:)
Fletto i muscoli e sono nel vuoto
Principi di architettura degli eleboratori
X postare immagini
-----BEGIN GEEK CODE BLOCK-----
GCS/IT/L/MU d- s: a C++$>+++ UL+>++ P L+++>++++ E--- W++ N++>+++ o+>++ K? w O-- M- VMS? V- PS++ Y+ PGP+ t 5? X+ R++>+++ tv+ b+++>++++ DI+++ D++ G e++ h- r++ y++
------END GEEK CODE BLOCK------
Addio Dani, sono più ricco perchè ti ho conosciuto
Avatar utente
thrantir
Moderatore
Moderatore
 
Messaggi: 8897
Iscritto il: 27 mag 2003, 13:32
Località: Pisa

Re: Sistema LAMP

Messaggiodi paperina il 19 feb 2008, 17:22

thrantir ha scritto:proprio per compeltezza: Linux è il sistema operativo (quello serio :mrgreen:)


hai ragione, ma quello lo avevo dato proprio per scontato.. :D :D :D
Muore lentamente chi evita una passione...
Avatar utente
paperina
Saggio del pianeta
Saggio del pianeta
 
Messaggi: 526
Iscritto il: 20 set 2006, 17:55
Località: pisa

Re: Sistema LAMP

Messaggiodi Ibanez89 il 24 apr 2008, 21:32

finalmente ci sono riuscito ad installarlo sul server... solo che ho dei problemini... come creo link simbolici? cioè quando metto il mio infirizzo mi da la cartella radice di var/www/ e non var/www/apache2-default più che altro mi servirebbe per privacy
CiAo DanIele...

Immagine
Pentium4 Northwood HT 2.6@3000 "230*13" vcore def [RIP] King Value 512*2 200@230 cas2@3 Ati x800gto2@x850pe powered by Arctic Cooler [RIP] Mother ASRock P4VM900-SATA2 [RIP]
insomma poco alla volta mi si sta bruciando tutto :asd:

Immagine
Avatar utente
Ibanez89
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 5563
Iscritto il: 15 apr 2006, 17:31
Località: Corato (BA)

Re: Sistema LAMP

Messaggiodi diegofio il 25 apr 2008, 00:17

in teoria dovresti andare nel file 000-default che si trova in /etc/apache2/sites-available/
(almeno sul mio pc)

cambia tutte le /var/www nella cartella che vuoi tu
diegofio
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 9270
Iscritto il: 29 lug 2005, 09:55

Re: Sistema LAMP

Messaggiodi dannyb78 il 25 apr 2008, 00:17

devi cambiare la www root nelle configurazioni di apache, ma non ricordo esattamente dove. Cerca in etc/apache
CM Cosmos S | CM Pro Real Power 1000W | ASUS P6T6 WS Revolution | intel i7 965 extreme | CM V8 | Corsair DHX 1600C8 6*2GB | ASUS EAH4870X2 | Creative X-Fi Titanium Fatal1ty Champion Series | WD Velociraptor 300 +Seagate 1,5TB | ASUS Bluray BC-08B1ST | NZXT Sentry LX | Panasonic TH-D42PT84

MTB CLUB CECINA - XII GRANFONDO COSTA DEGLI ETRUSCHI - Marina di Bibbona ||| Foto edizione 2009!!!
Avatar utente
dannyb78
Luce delle stelle
Luce delle stelle
 
Messaggi: 2648
Iscritto il: 26 giu 2005, 16:33
Località: Cecina

 
Prossimo

Torna a Guide

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite

cron