Università degli Studi di Napoli “Parthenope”
Linux Day 2009
Giuseppe AGRILLO
giuseppe.agrillo@uniparthenope.it
 Gestore delle richieste HTTP
 Gestore di Banche dati
 Linguaggio di Scripting dinamico
 Applicazione d’Esempio
GNU/Linux: il sistema operativo
Apache: il Web server;
MySQL: il Database Management
System ( DBMS o database server);
PHP: il linguaggio di scripting.
 Dobbiamo scaricarli con il nostro fidato Mulo?
 Dobbiamo “Crackarli” ?
 Oppure...
utilizzeremo la “chiave” di un nostro “amico”?
 Dobbiamo scaricarli con il nostro fidato Mulo?
 Dobbiamo “Crackarli” ?
 Oppure...
utilizzeremo la “chiave” di un nostro “amico”?
[ NO ]
[ NO ]
[ NO ]
 Utilizzeremo solo “FreeSoftware”!
 Installazione dal CD della Distro Linux;
 Installazione mediante Package Manager
◦ YUM (RH)
◦ APT (Debian)
◦ YaST (Suse)
◦ Altri...
 Per veri duri: da sorgente!!
 Utilizzeremo solo “FreeSoftware”!
 Installazione dal CD della Distro Linux;
 Installazione mediante Package Manager (PM)
◦ YUM (RH)
◦ APT (Debian)
◦ YaST (Suse)
◦ Altri...
 Per veri duri: da sorgente!!
 $ rpm –q mysql 
mysql-server 
httpd 
php
There are not package installed
yum install -y yast --install apt-get install
httpd apache2 apache2-mpm-prefork
mysql mysql libapache2-mod-php5
mysql-server mysql-client mysql-server
php php5 php5
php5-mysql
 $ rpm –q httpd 
mysql 
mysql-server 
php(<versione>)
OUTPUT:
<nome>-<versione>.<distro>.<arch>
 # ls /etc/init.d/ |grep <nome del “servizio”>
 # /etc/init.d/mysqld start
 # /etc/init.d/https start
 Funzionano? Bho! Dobbiamo verificarlo.
 Apriamo un browser e... http://localhost/
 # less /etc/httpd/conf.d/php.conf
LoadModule php5_module modules/libphp5.so
 # less /etc/httpd/conf/http.conf
Include conf.d/*.conf
 Test sul campo: creiamo un file .PHP di verifica:
# echo "<?php phpinfo();?>" | cat > /var/www/html/test.php
http://localhost/test.php
 # mysql -u root -p
Enter password:
> CREATE USER ‘prova_joomla'@'localhost';
Query OK, 0 rows affected (0.00 sec) and
>GRANT ALL PRIVILEGES ON *.* TO 'prova_joomla'@'localhost' WITH GRANT
OPTION;
Query OK, 0 rows affected (0.00 sec)
> SET PASSWORD FOR 'prova_joomla'@'localhost' =
PASSWORD ('<mysql-user-passwd>');
Query OK, 0 rows affected (0.00 sec)
> SELECT Host, User FROM mysql.user;
...
>q
ATTENZIONE:
Non dimenticate
il punto-e-virgola!!!
 $ mysql -u prova_joomla -p
Enter password:
>CREATE DATABASE prova_joomladb;
Query OK, 1 row affected (0.00 sec)
> SHOW DATABASES;
... > q
Bye
 $ ls /var/lib/mysql/
ibdata1 ib_logfile0 ib_logfile1 prova_joomladb
menagerie mysql test
Linux: il sistema operativo
Apache: il Web server;
MySQL: il Database Management
System ( DBMS o database server);
PHP: il linguaggio di scripting.
 http://www.joomla.it/presentazione-joomla.html
 CMS: Contend Manangement System;
 Basato sul PHP;
 Altamente personalizzabile;
 Estendibile;
 BackEnd (Admin)/FronEnd(Public);
 Comunity molto attiva (...avvolte anche troppo);
 # mkdir –p /root/dist/joomla /var/www/html/joomla/prova
 # wget
http://<Sito_ufficiale_di_JOOMLA!>/Joomla_<VERSIONE>-Stable-
Full_Package.zip 
-P /root/dist/joomla
 # unzip Joomla_<VERSIONE>-Stable-Full_Package.zip 
-d /var/www/html/joomla/prova
 # chown –R apache.apache !$
 http://127.0.0.1/joomla/prova
 http://localhost/joomla/prova
 Adesso dobbiamo configurare Joomla!
 Importante:
Joomla deve interagire con il Database MySQL
quindi dobbiamo impostare correttamente:
◦Username  <prova_joomla>;
◦Password  <mysql-user-passwd>;
◦nome del database <joomladb>.
 # mv configuration-dist.php configuration.php
 # chmod a+w configuration.php
 # rm –rf 
/var/www/html/joomla/prova/installation/
Usando il Browser...
http://localhost/joomla/prova/administrator
Usando il Browser...
http://localhost/joomla/prova/administrator
 http://localhost/joomla/prova
 http://lmncp.uniparthenope.it
Linux Day 2009 LAMP HowTo

Linux Day 2009 LAMP HowTo

  • 1.
    Università degli Studidi Napoli “Parthenope” Linux Day 2009 Giuseppe AGRILLO giuseppe.agrillo@uniparthenope.it
  • 2.
     Gestore dellerichieste HTTP  Gestore di Banche dati  Linguaggio di Scripting dinamico  Applicazione d’Esempio
  • 3.
    GNU/Linux: il sistemaoperativo Apache: il Web server; MySQL: il Database Management System ( DBMS o database server); PHP: il linguaggio di scripting.
  • 4.
     Dobbiamo scaricarlicon il nostro fidato Mulo?  Dobbiamo “Crackarli” ?  Oppure... utilizzeremo la “chiave” di un nostro “amico”?
  • 5.
     Dobbiamo scaricarlicon il nostro fidato Mulo?  Dobbiamo “Crackarli” ?  Oppure... utilizzeremo la “chiave” di un nostro “amico”? [ NO ] [ NO ] [ NO ]
  • 6.
     Utilizzeremo solo“FreeSoftware”!  Installazione dal CD della Distro Linux;  Installazione mediante Package Manager ◦ YUM (RH) ◦ APT (Debian) ◦ YaST (Suse) ◦ Altri...  Per veri duri: da sorgente!!
  • 7.
     Utilizzeremo solo“FreeSoftware”!  Installazione dal CD della Distro Linux;  Installazione mediante Package Manager (PM) ◦ YUM (RH) ◦ APT (Debian) ◦ YaST (Suse) ◦ Altri...  Per veri duri: da sorgente!!
  • 8.
     $ rpm–q mysql mysql-server httpd php There are not package installed
  • 9.
    yum install -yyast --install apt-get install httpd apache2 apache2-mpm-prefork mysql mysql libapache2-mod-php5 mysql-server mysql-client mysql-server php php5 php5 php5-mysql
  • 10.
     $ rpm–q httpd mysql mysql-server php(<versione>) OUTPUT: <nome>-<versione>.<distro>.<arch>
  • 11.
     # ls/etc/init.d/ |grep <nome del “servizio”>  # /etc/init.d/mysqld start  # /etc/init.d/https start  Funzionano? Bho! Dobbiamo verificarlo.
  • 12.
     Apriamo unbrowser e... http://localhost/
  • 13.
     # less/etc/httpd/conf.d/php.conf LoadModule php5_module modules/libphp5.so  # less /etc/httpd/conf/http.conf Include conf.d/*.conf  Test sul campo: creiamo un file .PHP di verifica: # echo "<?php phpinfo();?>" | cat > /var/www/html/test.php
  • 14.
  • 15.
     # mysql-u root -p Enter password: > CREATE USER ‘prova_joomla'@'localhost'; Query OK, 0 rows affected (0.00 sec) and >GRANT ALL PRIVILEGES ON *.* TO 'prova_joomla'@'localhost' WITH GRANT OPTION; Query OK, 0 rows affected (0.00 sec) > SET PASSWORD FOR 'prova_joomla'@'localhost' = PASSWORD ('<mysql-user-passwd>'); Query OK, 0 rows affected (0.00 sec) > SELECT Host, User FROM mysql.user; ... >q ATTENZIONE: Non dimenticate il punto-e-virgola!!!
  • 16.
     $ mysql-u prova_joomla -p Enter password: >CREATE DATABASE prova_joomladb; Query OK, 1 row affected (0.00 sec) > SHOW DATABASES; ... > q Bye  $ ls /var/lib/mysql/ ibdata1 ib_logfile0 ib_logfile1 prova_joomladb menagerie mysql test
  • 17.
    Linux: il sistemaoperativo Apache: il Web server; MySQL: il Database Management System ( DBMS o database server); PHP: il linguaggio di scripting.
  • 18.
     http://www.joomla.it/presentazione-joomla.html  CMS:Contend Manangement System;  Basato sul PHP;  Altamente personalizzabile;  Estendibile;  BackEnd (Admin)/FronEnd(Public);  Comunity molto attiva (...avvolte anche troppo);
  • 19.
     # mkdir–p /root/dist/joomla /var/www/html/joomla/prova  # wget http://<Sito_ufficiale_di_JOOMLA!>/Joomla_<VERSIONE>-Stable- Full_Package.zip -P /root/dist/joomla  # unzip Joomla_<VERSIONE>-Stable-Full_Package.zip -d /var/www/html/joomla/prova  # chown –R apache.apache !$
  • 20.
  • 21.
     Adesso dobbiamoconfigurare Joomla!  Importante: Joomla deve interagire con il Database MySQL quindi dobbiamo impostare correttamente: ◦Username  <prova_joomla>; ◦Password  <mysql-user-passwd>; ◦nome del database <joomladb>.
  • 22.
     # mvconfiguration-dist.php configuration.php  # chmod a+w configuration.php  # rm –rf /var/www/html/joomla/prova/installation/
  • 23.
  • 24.
  • 25.
  • 26.