Linux Day 2009 LAMP HowTo

Post on 28-May-2015

581 views 0 download

Transcript of Linux Day 2009 LAMP HowTo

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