Cos'è Nuke e perché Nuke
PHPNuke e PostNuke
sono programmi che installano, con semplici e relativamente poche operazioni, un
vero portale web dinamico. Il tutto è straordinariamente gratis
(con quel che costano oggi i siti dinamici in ASP o Perl …), utilizza linguaggi
e applicativi gratuiti (alla faccia di .Net, Access e IIS di proprietà
dell'uomo più ricco del mondo..), e con la possibilità di avere spazi
gratuiti su Internet che supportano il tutto ( il 67% dei web server sono
Apache, gratuito ). E, tenetevi forte, senza conoscere un punto e virgola di
programmazione ! (sempre alla faccia dell'uomo più ricco del mondo e dei
suoi diecimila programmatori indiani sfruttati e sottopagati dell'ultimo XP ….).
Procuratevi solo qualche ora libera di sera o di notte ( più adatta a queste
cose ), un paio di Budweiser, ottima birra ceca che trovate alla Coop più
vicina, per i momenti pi ù critici di scoraggiamento.
Partiamo
dall'inizio: il Nuke Web Portal System è un prodotto free scritto dallo
sviluppatore venezuelano Francisco Burzi poco più che trentenne che,
nell'estate del 2000 , creò la prima versione di PHPNuke 1.0. Il prodotto
catturò subito la simpatia di molti sviluppatori, che hanno reso PhPNuke, nella
ultima versione 5.5, e PostNuke, nell'ultima versione Rogue .713, un
sistema valido ed affidabile.
Nuke ha avuto un
tale successo in così poco tempo che sono usciti altri prodotti derivati come ad
esempio PostNuke (conta oggi circa 120 persone che ci lavorano ), DarkPortal,
Iscouter, PlanetNuke.
Nuke fornisce
essenzialmente:
1. Utenti ( sono
considerati sia gli utenti che si registrano che eventuali amministratori del
portale);
2. Categorie
3. Articoli ( sono
da associare ad una categoria ed hanno un range di date per la visibilità sul
portal );
4. Download ( è
gestito un sistema di download per permettere di offrire un servizio di scambio
file );
5. Sondaggi
6. Recensioni
7. Eventi storici
8. HTTP-referrers,
quindi possiamo controllare da quale URL provengono le persone che navigano sul
nostro portale e
quanti sono );
9. Banner ( è
possibile gestire la visibilità dei singoli striscioni pubblicitari all'interno
del portale );
10. File Manager;
11. Messaggi
12. Blocchi ( sono
delle zone , portlet, che vengono visualizzati all'interno del portale )
13. Preferenze ( ci
sono le infos relative al nome del portale, logo, tema, …)
14. Altri servizi
che si possono aggiungere, tipo chat, meteo, ecc… sviluppati di recente.
Nuke, essendo
basato su PHP e MySQL, non è business-oriented, cioè adatto a cooperare con un
eventuale base dati
aziendale; ci sono comunque i vari clone che permettono l'indipendenza del
database
( DarkPortal ):
A chi serve
?
Nuke è
particolarmente adatto alla gestione delle community, aggiornabile giornalmente
anche dagli utenti ( le date dei messaggi, post, sono visibili ), in cui si
prevedono almeno qualche centinaio di iscritti ( target = 500 ), decine di
migliaia di visite al mese, perché Nuke ha una finestra che mostra quanti
visitatori o utenti sono collegati in quel momento e persino chi sono.
Cercherò di
spiegare passo passo tutte le operazioni da compiere utilizzando un linguaggio
semplice e comprensibile anche al neofita del computer. I più smaliziati della
programmazione possono tranquillamente saltare il prossimo capitolo…
Un po' di teoria
Portale: è
un sito di Internet che offre diversi servizi ai suoi visitatori, specialmente
se registrati, dove si possono trovare le ultime notizie aggiornate, chat, forum
tematici di discussione, la possibilità di scaricare programmi, un motore di
ricerca, aiuti in linea, ecc. Esempi che tutti conosciamo sono www.tin.it,
www.libero.it, www.tiscali.it, ma anche tutti i siti delle testate
giornalistiche, come www.ilmanifesto.it, www.larepubblica.it, o
www.indymedia.org . Nuke è particolarmente adatto per creare i vortal (
vertical portal ), siti specializzati nell'offrire aggiornamenti,
approfondimenti e risorse a tutti coloro che, per professione o per hobby, sono
interessati a un certo argomento o tipologia, cioè virtual communities di
utenti. Nuke rientra tra i prodotti con l'approccio RAD ( Rapid
Application Developement ) allo sviluppo, cioè offre all'amministratore del sito
una serie di strumenti potenti e semplici che permettono di realizzare un
portale di alto livello senza avere alcuna competenza specifica.
Web: la
ragnatela: comunemente l'insieme delle pagine web o siti di Internet, composti
da testi, immagini, filmati, suoni, animazioni, cioè multimediali. Ognuna
di queste pagine è scritta in un linguaggio, detto HTML, nato, pensate, a
Ginevra nel 1991. Queste pagine che formano il sito non sono sequenziali, come
un libro, ma sono collegate tra loro tramite link (collegamenti ), e sono
perciò detti ipertesti. Da qui deriva la sigla http (HyperText Transfer
Protocol) che troviamo sempre davanti al nome dei siti quando usiamo il web,
cioè il pi ù diffuso servizio di Internet insieme alla posta elettronica, spesso
considerato erroneamente sinonimo di Internet.
Server e client:
server è ogni computer o programma della rete, collegato 24 ore al giorno, che
ospita le pagine web e gli altri servizi Internet e li mette a disposizione dei
client; client è qualsiasi computer o programma che usa i servizi del server:
quindi siamo noi quando ci colleghiamo a tal sito che si trova su tal server di
Internet. Le pagine dei siti, scritte in HTML, si trovano sui server e noi per
richiederle scriviamo l'URL ( = nome del sito, tipo
http://www.postnuke.it ) nel browser, cioè il programma tipo Internet Explorer,
Netscape Navigator o Opera che colloquia col server e traduce le istruzioni HTML
nella pagina che vediamo. Il browser sul nostro computer dunque traduce, si
dice interpreta, le istruzioni HTML che arrivano dal web server.
Siti statici &
dinamici: Per scrivere le pagine dei siti bisogna conoscere l'HTML oppure
usare programmi detti web editor, shareware, cioè a pagamento, tipo FrontPage o
Dreamweaver, oppure freeware, gratuiti come Netscape Composer o l'australiano
Evrsoft 1stPage 2000 che permette in modo abbastanza intuitivo di creare
semplici pagine web, ma anche i siti più complessi. Una volta creato il sito sul
nostro computer, si dice "in locale", ed averlo visualizzato col nostro
browser, bisogna metterlo su Internet ( uppare ) usando un altro servizio
di Internet, detto FTP, File Transfer Protocol, con appositi programmi
FTP,( come CuteFTP, WS_FTP ) anche gratuiti come il tedesco LeechFTP.
Questi software trasferiscono le pagine da noi create dal nostro computer al
server a cui abbiamo richiesto lo spazio web
che ospiterà il
nostro sito, che naturalmente può essere a pagamento ( dai 100 euro in su
all'anno) oppure gratuito, offerto da tiscali, tin, netcat, xoom, f2s, lycos,
ecc.
Ogni volta poi che
vogliamo aggiungere o cambiare qualcosa al sito, dobbiamo riusare un programma
FTP, scaricare (downlodare ) le pagine dal server al nostro computer, riaprire
il web editor, fare le modiche, salvare, riaprire l'FTP e uppare di nuovo la
pagina sul server. Questa è la procedura per gestire un sito statico.
Il sito dinamico
invece ha una gestione più semplificata: una volta creato e uppato, viene
gestito direttamente via Browser, cioè senza downlodare e uppare continuamente
le modifiche e senza usare altri programmi oltre al solito browser ( facile, eh
?). Tutto ciò però al costo iniziale di settimane di programmazione per creare
il sito, con tanto di smanettamenti, notti in bianco e casse di Budweiser.
Ne sono esempio i
siti delle testate dei giornali che devono essere aggiornati anche più volte al
giorno e così non devono creare per ogni notizia una pagina ad hoc con tutti i
link da aggiungere e modificare nelle pagine ( ricordate l'ipertesto ?). Uno dei
tanti programmi che crea automaticamente siti dinamici, anzi, portali dinamici
ed è pure gratuito si chiama PhpNuke.
Scripting:
qualsiasi codice di
programmazione che svolge qualche particolare funzione all'interno del sito,
p.e. che mostra una scritta scorrevole, o che fa cambiare colore a un bottone
quando si passa sopra col mouse ( rollover ) o che controlla nome e password
inseriti dall'utente. Tutti questi eventi sono gestiti dal programmino detto
script, che può essere embedded, cioè incorporato nel codice HTML della
pagina e perciò anch'esso interpretato dal nostro browser all'arrivo della
pagina, come p.e. Javascript o l'identico Jscript della Microsoft, oppure
server side, lato server, lo script viene eseguito quando la pagina si trova
ancora sul server, cioè prima di essere inviata al nostro browser.
In quest'ultimo
caso, guardando il codice HTML della pagina che ci è arrivata, cliccando nel
browser su Visualizza | HTML , non sarà visibile lo script, perché è già stato
eseguito sul server, anzi è proprio lo script che ha generato dinamicamente
la pagina che noi abbiamo richiesto….
Insomma, ci sono
delle tecnologie che a seconda dell'utente che richiede un servizio e del tipo
di servizio richiesto, si occupa di creare delle pagine ad hoc, personalizzate,
aggiornabili via web.
Naturalmente tutte
le situazioni sono perfettamente previste, anzi programmate con pagine e pagine
di codice di scripting…Uno dei primi e pi ù veloci linguaggi di scripting è
PHP, ossia Personal Home Page, nato proprio per questo scopo, naturalmente
gratuito e derivato dal C, linguaggio nato per
programmare sistemi
operativi come UNIX e Linux. Altre tecnologie server side sono il più versatile
Perl, Python, sempre derivati dal C e gratuiti, ma più lenti, e ASP ( Active
Server Page ) della Microsoft, che utilizza codice in VbScript, JScript o
PerlScript, copie brevettate da Bill Gates di altri linguaggi, oltre a JSP
( Java Server Page ) in Java, gratuito, e le CGI scritte in altri linguaggi,
come C++ e Java.
Anche qui il
dualismo del mercato è sempre tra shareware vs. freeware, Microsoft vs. Linux e
Sun. Altra Budweiser ? OK, andiamo avanti con i termini…
Database:
è un insieme di
archivi, di tabelle con righe e colonne, dove vengono memorizzati i dati.
Quali dati ? Tutti
i dati contenuti nel nostro portale dinamico: i nomi e le password degli utenti
registrati, le ultime notizie del giorno, i post ( messaggi ) spediti dai
visitatori ai forum tematici ( specie di piazze virtuali, in cui si scambiano
opinioni, consigli, notizie, how to,…), i programmi che si possono scaricare,
ecc., qualsiasi dato del portale viene inserito in un'apposita tabella e
memorizzato. PostNuke durante l'installazione, cioè a portale vuoto, crea già 63
tabelle.
Per gestire le
tabelle ( inserire, modificare e consultare i dati ) serve il DBMS, un programma
apposito.
Il più usato sui
sistemi Microsoft è Access di Office, sui sistemi UNIX e Linux è MySQL,
naturalmente il primo al costo di Office Professional, il secondo gratuito. Nuke
utilizza, manco a dirlo, MySQL, ma ha anche i driver per la connessione a
tutti i maggiori software di gestione dei datsabase ( Access, Borland, DB2,
Oracle, Sybase, ecc.).
Web server:
come già detto alla
prima Budweiser, il web server è quel computer della rete che ospita i siti,
cioè contiene il disco fisso dove si trova fisicamente memorizzato il nostro
sito. I server hanno bisogno di un insieme di programmi che li facciano
funzionare, hanno bisogno cioè, come qualsiasi altro computer, di un sistema
operativo, con programmi specifici da web server per gestire gli accessi da
altri server e dai client, con tanto di problemi di sicurezza, ecc. Circa l'80%
dei web server utilizza la piattaforma UNIX - Linux con server Apache (
67%), iPlanet di Netscape ( 6% ), Zeus o WebSphere; il restante 20% è Microsoft
IIS. Apache, sviluppato da programmatori volontari, è così diffuso perché è
gratuito, IIS invece è stato compreso in Windows 2000 e nel nuovo XP.
Dato che Microsoft
è un sistema proprietario, cioè molto integrato con le "proprie" applicazioni
(c'è a proposito una causa in corso contro Bill Gates ), il server IIS è
ottimizzato per database Access e scripting in ASP o VisualBasic, mentre su
piattaforme Linux, le più diffuse sulla rete, i server Apache supportano
database MySQL e scripting in PHP o Perl.
PhpNuke si basa
su programmi di scripting in PHP, utilizza dati registrati con MySQL e gira su
server Apache.
Naturalmente queste composizioni non sono assolute: gli spazi web a pagamento
costano tanto di
più, quante estensioni in più hanno : così troviamo IIS con supporto PHP, poi
Apache
che gira su
Windows, ecc.
I prezzi della concorrenza
· Microsoft Portal
Platform: più specifico e completo: Portal server $ 6999 + Management server $
42999 per
processore
· IPlanet Platform
; della Sun: Application server $ 19945 per CPU + web server $ 1495 per CPU +
Calender e
directory server per utente;
· CleverPath Portal
3.5 in Java: $ 21840 fino a 4 CPU
· Assentila Media:
a partire da 200 milioni di Lire
Tanto per avere
qualche idea….
Cookies:
i biscottini: sono
dei piccoli file di testo, scaricati dal portale sul nostro computer, in cui
vengono memorizzati i nostri movimenti sul sito e tutti i dati inseriti in esso.
Usati quasi sempre per scopi commerciali, nei portali sono invece essenziali per
riconoscere l'utente iscritto e per personalizzargli la pagina. Da accettare
solo quelli provenienti da siti considerati sicuri e affidabili.
Molti siti
permettono, p.e., di leggere la propria posta sul portale solo se si accetta il
loro cookie.
Non è necessario
accettarli in Nuke, perché si può entrare nel portale anche nel classico modo di
inserire nome utente e password.
Free software e Open Source:
Perchè esistono
programmi a pagamento e corrispondenti programmi gratuiti ? Perché i primi
programmi, in origine, erano sviluppati da Università e centri di ricerca,
comunque enti pubblici o finanziati col denaro pubblico. Poi, negli anni,
l'aumentata complessità delle applicazioni e la necessità di automatizzare le
informazioni aziendali ha portato molti di questi ex studenti a lavorare come
programmatori e poi come sviluppatori per le aziende. Finchè negli anni '80 si è
diffuso il personal computer e uno di questi ex, un certo Bill Gates, ha pensato
bene di sviluppare e di far pagare un sistema operativo per PC.
Con la diffusione poi di Internet e del web, servizio da sempre gratuito, un
professore del MIT di Boston, Richard Stallman, ha lanciato la Free
Software Foundation col progetto GNU, per diffondere l'utilizzo e le
conoscenze informatiche: visto che l'hardware bisognava comunque pagarlo, perché
bene materiale, almeno i programmi dovevano essere gratuiti. Negli anni '90
Linus Thorwalds lancia il progetto Linux, cioè un sistema operativo
gratuito con sorgenti di pubblico dominio, cioè migliorabili da chiunque, col
vincolo di non brevettare, ma rendere pubblici i miglioramenti apportati. Così è
nato Linux e la licenza open source, sviluppati da migliaia di programmatori
volontari e centri universitari. Anche molte grandi case hanno risposto
all'appello di Stallman, Netscape e Star Office prima, Java poi sempre della Sun
Microsystem sono diventati open source, Dbase della Borland, poi sono nati PHP,
Perl, Javascript, Python, MySQL; Gimp, il fenomeno Napster unica sconfitta, ma
con tanti eredi… Oggi tutte le più grandi case, IBM, Compaq, Cisco, ecc.
collaborano a migliorare Linux, molti enti pubblici americani utilizzano Linux,
le poste USA, le università… noi italiani, invece, …. Nuke è sotto licenza GPL (General
Public License) con l'obbligo però di lasciare nel codice il copyright di Burzi
e possibilmente anche il logo di phpnuke.org (cosa non sempre rispettata da
tutti).
La parte più dura
l'abbiamo superata e abbiamo qualche infarinatura di come vanno le cose…
Cosa ci serve e
come si usa
Come faccio a
procurarmi tutto ciò che mi serve ? Naturalmente dalla rete. I programmi sono
liberamente scaricabili da Internet, velocità di connessione notturna
permettendo. Consiglio di stampare le prossime pagine....
E' sufficiente
il vostro Windows 9x/2000 o XP ( che avete dovuto acquistare col vostro
computer con licenza OEM..) come sistema operativo. Chi volesse installare tutto
su Linux, ci sarà (pigrizia
permettendo) un
capitolo apposito in fondo alla dispensa.
Innanzitutto ci
serve Apache, PHP e MySQL, che trovate insieme sotto il nome di Easyphp
già configurati per macchine Win32 su www.easyphp.org , un prodotto francese
integrato. Cliccate su Telechargements, selezionate Version courante Easyphp1.6,
grosso 9235 Kb, e salvatelo sul vostro disco fisso dove volete.
Il file compattato
contiene:Apache 1.3.24 + Php 4.2.0 + MySQL 3.23.49 + Phpmyadmin 2.2.6.
Poi ci serve
naturalmente PHPNuke, che trovate in versione per Win32 su www.splatt.it
nella sezione download | Phpnuke | Phpnuke 5.6 o la precedente versione 5.5 |
salvate sul vostro disco dove volete il file phpnuke-5.5.zip di 2,09 Mb o meglio
quello recente phpnuke 5.6
Il programma che
utilizzeremo per l'FTP sarà il tedesco LeechFTP, scaricabile
all'indirizzo http://stud.fh-heilbronn.de/~jdebis/leechftp/ cliccando "download"
e poi selezionando il file lftp13.zip
(da scaricare,
scompattare ed eseguire mediante autoinstallazione "setup").
Oppure: http://download.cnet.com/download/0-10064-100-915590.html
cliccando "download
now" (anche qui da
scaricare, scompattare ed eseguire mediante autoinstallazione "setup").
Oppure: http://www.5star-shareware.com/software/freeware/ftp-clients.html
cliccando su di uno dei vari"download" elencati nella pagina (tutti gratuiti).
Oppure il vs WS_FTP o qualsiasi altro.
Per chi volesse
provare Nuke in remoto sul web…
Ci serve subito
qualcuno che ci dia spazio gratis per provare il nostro Nuke. Faremo più avanti
il discorso nello specifico, ma per ora dobbiamo crearci un account ( indirizzo
) per lo spazio di Nuke. Ho scelto come provider ( colui che offre spazio sul
proprio server ) una nuova società francese, una specie di tiscali, che offre
servizi di connessione in Francia, Adsl, ecc, e anche spazio gratuito con
estensione
php e supporta
MySQL, perfetto ! Fornisce una discreta velocità, discreti servizi rispetto ad
altri
provider, e ci da
un dominio ( nome del sito ) abbastanza corto e facilmente ricordabile, tipo
http://nomescelto.free.fr
, invece dei kilometrici subdomini con vari slash degli altri.
Chiediamo lo spazio
fin da ora, perché free.fr ci manderà a casa via posta ordinaria ( non via mail
) la
password, e ci
vorrà almeno una settimana, tempo in cui impareremo a conoscere Nuke in locale e
ad
esercitarci nella
sua amministrazione.
Allora, collegatevi
a www.free.fr, nella barra dei menu in alto della pagina cliccate su "Inscription
à
Free", cliccate poi
sul tasto rosso "Continuer" (per chi non masticasse il francese c'è il contratto
d'utilizzo…), nella
prossima finestra inserire tutti i dati richiesti ( mettete l'indirizzo a cui
dovranno
mandarvi la
password ), cliccate poi sul tasto "Valider", scegliete il nome utente (quello
che figurerà nel dominio, mi raccomando, parole uniche o unite da punto o
trattino basso e, regola del web, tutto in
minuscolo ),
spuntate la voce "Autre proposition"; dove chiede del "Kit de conexion",
spuntate invece la voce "Informations de configuration", in quanto non ci
interessa collegarci a Internet tramite loro.
"Valider", e
aspettiamo quei 7 - 10 giorni che ci arrivi la loro lettera all'indirizzo
specificato. Intanto
facciamo la ……
Installazione in locale
Siamo pronti per
le installazioni ?
Lanciate
l'eseguibile easyphp1-6_setup.exe e installatelo come un normale
programma Windows.
L'installazione è
in francese, ma è abbastanza intuitiva: dite OK a tutto. Completata
l'installazione, avviate Easyphp da " Menu Avvio | Programmi | Easyphp " e
apparirà un nuovo simbolo a forma di "e" in basso a destra sul desktop affianco
all'orologio. Cliccate col destro su questa icona, scegliete " Configurazione |
Easyphp ". Nella finestra di configurazione che appare, spuntare la voce "
Partenza automatica dei servers " e l'ultima, cioè " Controllo automatico delle
modifiche ". Poi, nella sottostante casella di testo con la riga di comando di
MySQL: Argomenti MySQL "-skip-name-resolve -skip-granttables -language=french "
, cancellare quel "french" finale e sostituirlo con "italian" .Così faremo
parlare italiano al nostro database. Cliccate su " Apply " e poi su "Close". I
server MySQL, PHPAdmin e Apache sono stati installati. Facile, vero?
Verifichiamolo in locale : aprite il vostro browser, Internet Explorer o
Netscape che sia, se parte la connessione, cliccate su " Non in linea " e vi
uscirà l'odiosa pagina di errore res, fregatevene. Digitate nella barra degli
indirizzi l'URL della vostra macchina, cioè il vostro indirizzo, che è sempre
http://localhost oppure http://127.0.0.1 (non lo sapevate di avere un indirizzo
? ), Vedrete apparire la bellissima pagina di benvenuto di Php, festeggiate con
una Budweiser e provate le funzioni che avete appena installato cliccando sui
vari link. Auguri e alla salute !
Ricordarsi che la
cartella che dovrà contenere tutti i file da pubblicare è "c/programmi/easyphp/www".
Se controllate il
suo contenuto con risorse del computer o Gestione Risorse, dovrebbe contenere
solo un index.htm, che è la pagina di benvenuto del Php. Qui metteremo
successivamente tutti i file di Nuke per provare in locale se funziona! Da
ricordare anche l'URL del PhpMyAdmin, che è http://localhost/mysql
raggiungibile anche
cliccando sul pulsante PhpMyAdmin della home page del localhost.
Quando vi sarete
divertiti abbastanza da veri programmatori server side, possiamo iniziare a
installare il nostro Nuke sulla sua piattaforma locale, cioè il nostro Pc/server
di casa.
La creazione del
database
Riprendiamo il
nostro file PhpNuke.zip, dezippiamolo, cioè clicchiamoci sopra e si aprirà il
programma
WinZip. Cliccate
sull'icona Extract , nella finestra a destra cliccate due volte su Disco locale
(C) , a
sinistra c'è una
casella chiamata Extract to , contenente la scitta C: aggiungiamo phpnuke , con
selezionati All
files e Use folder names , clicchiamo sul bottone Extract e quando ci riappare
Winzip, lo
chiudiamo nel modo
abituale di chiudere le finestre Windows.
Ora apriamo
l'"Esplora risorse" di Windows, che trovate dentro il Menu Avvio / Programmi ,
aprite nella finestra di sinistra Disco locale / Programmi / EasyPHP / www e
create una sottocartella per il nostro nuke ( cliccando nel menu File / Nuovo /
Nuova cartella ), rinominandola phpnuke .
Ora cercate la
cartella C:/phpnuke/HTML del programma originale e copiatene tutto il contenuto
nella
cartella
C:/Programmi/EasyPHP/www/phpnuke appena creata.
Ora tenetevi forte,
chiudete tutti i programmi aperti, aprite Internet Explorer, cliccate sul
bottone Non in linea che cerca di collegarsi a Internet e digitate nella barra
degli indirizzi l'URL ( = indirizzo)
dell'amministratore
del server MySQL, cioè http://localhost/mysql/ , apparirà una finestra che vi
chiede
di connettervi,
cliccate su Connetti e così vi connettete al server Apache del vostro stesso
computer (un
po' bizzarro, ma
ormai da veri Admin, vi sarete già abituati a certe stramberie..). Appare
PHPMyAdmin, in cui creeremo il database con tutte le 63 tabelle di Nuke.
Se non dovesse
apparire la pagina di Benvenuto e invece esce la fatidica Impossibile trovare la
pagina ,
niente paura , vuol
dire che avete spento il computer dopo l'installazione di Easyphp del capitolo
precedente e
affianco all'orologio del desktop di Windows in basso a destra del vostro
schermo non
appare la e con il
punto rosso lampeggiante: Andate su Menu Avvio | Programmi | EasyPHP !
EasyPHP , appare la
finestra di Easyphp, cliccate su Apply , poi su Close e vedrete la e col punto
rosso
lampeggiante, e
riprendete da "Ora tenetevi forte…." più sopra.
Nella pagina di
benvenuto del phpMyAdmin scrivete nell'unica casella di testo sotto la voce
"Crea un
nuovo database" il
nome del vostro database, phpnuke , e cliccate su "crea". Appare una nuova
finestra:
sotto la voce
"Posizione del file di testo" c'è il tasto Sfoglia , cliccateci sopra, e cercate
il file nuke.sql
nel percorso Disco
locale (C:) | phpnuke | SQL | nuke.sql e una volta selezionato, esso apparirà
nella
suddetta casella di
testo, basta poi cliccare sul pulsante Esegui e il database è creato ! Appare il
dump ( =riepilogo) delle nostre tabelle. Chiudiamo tutto e festeggiamo un altro
passo avanti.
Settaggio di
config.php, cervello di Nuke.
E' ora di
amministrare, cioè configurare il nostro Nuke. E' qui che servirebbero ottime
conoscenze di
programmazione e la
conoscenza del linguaggio PHP, ma noi siamo già Admin, e queste cose non ci fan
paura… Per modificare un sorgente in PHP bisogna utilizzare un editor di testo:
non usate Wordpad o eggio Word, perché inserisce nel testo un sacco di simboli
invisibili a noi, ma non al server: Blocco ote , che trovate in Menu
Avvio | Accessori va più che bene. Apritelo, cliccate sul menu File ! Apri ,
ercate Disco Locale (C) | Programmi | EasyPHP ! www ! phpnuke e avendo
selezionato sotto la voce Tipi di file" l'opzione Tutti i file, apparirà anche
il file config.php, selezionatelo e cliccate sul tasto pri.
Le parti scritte
tra ####### e /* sono commenti, le righe che iniziano col simbolo $ sono le
righe di odice php. Analizziamo il codice:
%
$dbhost = "localhost";
è il nome del nostro server Apache
$dbuname = "root";
è il nostro nome utente sul server, cioè non ne abbiamo
$dbpass = " "; è la
password che per ora non abbiamo ancora
$dbname = "phpnuke";
è per ora il nome del nostro database sul server
$dbtype = "MySQL";
attenzione!! Se
usate la versione 5.5, Cambiare in minuscolo $dbtype="mysql"; se invece usate
la versione recente 5.6 non c’è bisogno di fare questo cambiamento in quanto il
baco è stato eliminato
%
Dopo altri commenti
troviamo un altro blocco di istruzioni che iniziano col solito simbolo $ che è
il
prefisso di tutte
le variabili di php. Qui troviamo le nostre variabili da personalizzare:
sostituire le
stringhe tra
virgolette con le vostre personali…
%
$sitename = "Nome
del nostro portale";
$nukeurl =
"http://indirizzo del nostro portale su internet";
$site_logo = "logo.gif";
/* lasciamolo così */
$slogan = "Il mio
primo portale !";
$startdate =
"maggio 2002";
$adminmail = "la
mia posta elettronica da Admin ";
%
Tralasciamo per ora
le altre variabili di configurazione, perché lo scopo del portale è proprio
quello di ermettere la configurazione del sito via browser. Salviamo e chiudiamo
il cervello php.
C'è ancora da
fixare un altro bug (errore) del Nuke 5.5 : aprite sempre il Blocco Note ,
cliccate sul enu File ! Apri , cercate Disco Locale (C) | Programmi | EasyPHP !
www ! phpnuke/includes e avendo selezionato sotto la voce "Tipi di file"
l'opzione Tutti i file, apparirà anche il file sql_layer.php, elezionatelo e
cliccate sul tasto Apri. Ora cercate la riga con $dbtype="MySQL"; e riscrivetela
tutta in inuscolo, così $dbtype="mysql"; poi pi ù sotto cambiate allo stesso
modo tutti i case "MySQL": in inuscolo, così Case "mysql": ce ne sono otto da
cambiare. Salvate e chiudete.
Se state usando
invece la versione 5.6 non c’è bisogno di questi ulteriori aggiustamenti.
Bene, bene, ….
vediamo finalmente che aspetto ha questo nostro primo portale: digitiamo l'URL
del
portale sul nostro
browser, cioè apriamo Internet Explorer, clicchiamo su Non in linea, nella barra
degli
indirizzi scriviamo
http://localhost/phpnuke (il nome della cartella dove avevamo copiato i files di
nuke), poi
Connetti, e wwwwooowwwww ! la pagina iniziale del nostro primo portale. Una
Budweiser
ce la siamo proprio
guadagnata…..
Ma è tutto in
inglese! D'accordo, nel solito config.php, cercate la sezione # Site Language
Preferences
$language = "english";
//sostituite con $language="italian"
$locale = "en_US";
salvate il
config.php e godetevi Nuke in italiano.
Amministrazione di Nuke
Se siamo riusciti a
visualizzare Nuke, vuol dire che siamo pronti ad amministrarlo via browser, come
si
fa via Internet.
Per entrare come Admin, amministrare e modificare ciò che vogliamo, dobbiamo
aprire il famigerato admin.php. Quindi digitiamo il suo URL nella barra degli
indirizzi, cioè
http://localhost/phpnuke/admin.php
(valgono le considerazioni fatte sopra: è attivo Apache?…), appare
la finestra per
loggarsi, cioè nome admin e password, per avere i privilegi dell'amministratore:
Admin
ID scrivete God, e
la password è Password, facendo attenzione a digitare le maiuscole iniziali,
perché
PHP è
case-sensitive, cioè maiuscole e minuscole sono caratteri diversi. Da questa
pagina potete
graficamente con i
link modificare qualsiasi parte del portale. Buon divertimento !
Installazione in
remoto
Se il portale vi
funziona in locale, cioè sulla stessa vostra macchina e avete già imparato un
po' ad
amministrarlo via
browser, smanettandoci sopra, siete ormai pronti a pubblicare il vostro primo,
anzi
secondo portale
direttamente su Internet, naturalmente su spazio gratuito.
Cosa ci serve
Intanto qualcuno
che ci dìa lo spazio gratis. Sono molti i server che offrono spazio gratuito
all'attivazione di
un account, cioè quando ci si registra, come tin.it. tiscali.it, digilander, ma
solo pochi di questi server gratuiti sono Apache, hanno un database MySQL e
hanno le estensioni PHP, cioè vi
permettono di far
eseguire dei programmi sui loro server. E solo pochissimi vi offrono tutto ciò
senza
fastidiosissimi
banner ( striscioni pubblicitari) che occupano metà della vostra pagina. In
pratica c'è
www.multimania.com,
www.portland.co.uk, www.dk3.com, www.7host.com, poi c'è www.free.fr in
Francia e pochi
altri che offrono tutto ciò che ci serve gratis e senza banner per provare il
nostro portale.
Naturalmente
pagando dagli 80 euro in su all'anno, troviamo quello che vogliamo sugli hoster
a
pagamento, ma per
iniziare va bene gratis. Se non usate free.fr, ricordatevi di leggere nelle FAQ
del
server le
informazioni riguardanti l'indirizzo del database, del sito, cosa mettere nel
config.php, perchè
ogni server fa le
connessioni un po' a modo suo, ma, buon consiglio, scrivetevi sempre tutti i
dati.
Sostanzialmente il
procedimento dovrebbe essere simile.
Utilizzeremo quindi
www.free.fr, scelto perché è nella media dei server gratuiti per quanto riguarda
velocità e
prestazioni, solo che non permette di spedire mail dal portale per motivi di
sicurezza e
antispam, ma dà un
indirizzo che sembra quasi di secondo livello ( tipo http://tuonome.free.fr ).
Nel
frattempo che
abbiamo già provato Nuke in locale, ci sarà arrivata la fatidica lettera blu di
free.fr con la
nostra password.
Ora dobbiamo
innanzitutto attivare il nostro spazio: collegatevi a http://support.free.fr,
una buona pagina di supporto tecnico per chi conosce il francese, cercate più in
basso nella pagina il link "Activer votre ompte pour le pages personelles"
oppure se non lo trovate, scrivete direttamente il link
http://inscription.free.fr/acces/pagesperso.html
, inserite login e password come da lettera (attenti a
scrivere tutto in
minuscolo…), cliccate su "Valider".
Prossimo passo:
attivazione del nostro spazio database MySQL: scrivete l'indirizzo
http://subscribe.free.fr/acces/createbase.html
, inserite i soliti login e password , poi "Valider".
Ora dobbiamo
caricare il nostro database di Nuke sul server, niente di più facile:
Collegatevi alla pagina ttp://sql.free.fr , esce una finestra che ci chiede per
l'ennesima volta login e password (per motivi di icurezza, eh, Unix….), et
voilà! è lo stesso phpMyAdmin dell'installazione in locale, il nostro
ormai amiliare gestore di database, l'Access gratuito di MySQL. Nella pagina di
benvenuto del phpMyAdmin crivete nell'unica casella di testo sotto la voce "Crea
un nuovo database" il nome del vostro database,uguale al vostro login, e
cliccate su "crea". Appare una nuova finestra: sotto la voce "Posizione del file
i testo" c'è il tasto Sfoglia , cliccateci sopra, e cercate il solito file
nuke.sql nel percorso Disco locale C:) | phpnuke | SQL | nuke.sql e una volta
selezionato, esso apparirà nella suddetta casella di testo, asta poi cliccare
sul pulsante Esegui e il database è creato ! Appare il dump ( = riepilogo) delle
nostre abelle. Chiudiamo tutto e festeggiamo un altro passo avanti con una bella
birra…
Uppare le pagine e settare i chmod
Prima di trasferire
tutto il contenuto della cartella Html di Nuke sul nostro spazio attivo, bisogna
sfoltire utti i file per noi inutili, tipo traduzione in lingua bengali,
malgascia, ecc, e, naturalmente impostare il ostro cervellotico config.php
per collegarlo al database appena creato ed assegnare i valori ricevuti
nella lettera alle
variabili php. L'abbiamo già fatto in parte in locale, ricordate ?
Per fare qualsiasi
cambiamento a un file conviene, da buoni programmatori, lavorare sempre su copie
dei programmi.
Perciò creeremo una
copia di Nuke da configurare ed uppare, invece di usare quella del nostro sito
ocale. Aprite Esplora risorse , aprite nella finestra di sinistra Disco locale
C:, cliccando sul simbolo +, oi sul + affianco alla cartella phpnuke, poi
direttamente sulla sottocartella html, a destra apparirà il suo ontenuto;
cliccate sul menu Modifica | Seleziona tutto , poi col tasto destro del mouse
clicchiamo sulla arte evidenziata a destra, scegliamo Copia. Ora riclicchiamo
nella parte sinistra su Disco locale C: , poi ul menu File | Nuovo | Nuova
cartella , appare a destra la nuova cartella: clicchiamoci su due volte, si pre
uno spazio vuoto, ci clicchiamo dentro col destro, Incolla, ed ecco la copia di
Nuke, che dovremmo inominare. Perciò tornate sulla finestra di sinistra,
cliccate col destro sulla cartella appena creata, hiamata Nuovacartella,
Rinomina ed assegnate il nome portalefree. I files da uppare si trovano perciò n
C:portalefree .
Ora eliminiamo i
pesanti files di lingua: cliccate (a sinistra si naviga tra le cartelle, a
destra tra i files! )
su C:portalefreelanguages
ed eliminate tutti i lang-qualcosa.php (cliccandoci sopra col destro,
Elimina ), eccetto
english e italian. Poi andate in ogno altra cartella sotto la cartella /html ed
in ognuna
di queste ci
saranno altre cartelle language e procediamo come sopra. Ah, dentro la cartella
/images ce
ne è un'altro
language, idem. Abbiamo risparmiato 2 Megabytes di roba inutile da trasferire….
Ora apriamo il
nostro config.php col Blocco Note e mettiamoci a configurarlo:
$dbhost = "localhost";
/* è il nome del db di free.fr, che lasciamo così */
$dbuname = "login
della lettera";
$dbpass = "password
della lettera";
$dbname = "sempre
login della lettera";
$prefix = "nuke";
$user_prefix = "nuke";
$dbtype = "MySQL";
cambiare minuscolo
$sitename = "nome
che apparirà sulla barra del titolo del portale";
$nukeurl = "http://nostrologin.free.fr";
$site_logo = "logo.gif";
$slogan = "ciò che
deve apparire sotto il titolo del portale ";
$startdate =
"maggio 2002";
$adminmail = "nostrologin@free.fr";
$anonpost = 1; /*1=
permettiamo ad utenti anonimi di postare 0= solo ai registrati */
Page 9 sur 12
Dispensa di PhpNuke
09-05-02 file://E:Posteattachementphpnuke.htm
$Default_Theme = "SlashOcean";
/* l'impostazione grafica da cambiare success. */
$banners = 0;
$myIP =
"150.10.10.10"; /* non abbiamo un ip statico, percui lasciamo così */
$language = "english";
/* da cambiare a italian */
il resto possiamo
comunque sempre poi modificarlo direttamente dal browser via admin.php.
Ora bisogna
trasferire tutte le cartelle del nostro sito sul server via Ftp. Per questo
dobbiamo installare
LeechFTP che
avevamo scaricato e pure già installato. Quindi apriamolo (con Start | Programmi
|
LeechFtp ) , e
vediamo una interfaccia abbastanza semplice: la finestra centrale è la directory
locale
( cioè il contenuto
del nostro disco fisso ), a destra la directory remota, vuota perché non siamo
ancora
connessi; la
finestra a sinistra mostra le operazioni in corso con i comandi ftp.
Selezioniamo dal
menu Local | Change directory e clicchiamo due volte sulla nostra cartella da
trasferire :portalefree e vedremo apparire la nostra local directory. Poi
selezioniamo il menu File | Bookmarks
per impostare
l'Ftp: nella finestra che appare selezioniamo il menu Edit | Add bookmark. Nella
finestra
che appare
compiliamo i dati della connessione: Host or Url scriviamo ftpperso.free.fr (
che è l'indirizzo
ftp a cui
connettersi), port lasciamo 21 , username cancelliamo anonymous e inseriamo il
nostro login
solito, così anche
la password, Remote directory inserire lo slash ( cioè il simbolo / );
attenzione a
spuntare la voce
personal login invece di anonymous ! Cliccare sulla prossima linguetta Advance
Settings, sotto
local directory sul tasto a destra con i tre punti cliccare e selezionare C:portalefree
e
lasciare la voce
Number of logins su unlimited. Cliccare sulla linguetta Connection settings e
lasciare i
retries (tentativi)
su 50, idle su 30 (secondi di tentativo per file), timeout su 120 ( secondi per
tentare
connessioni) e
login delay su 5 (sec. Per il login). Attenzione, non deve essere spuntata la
voce use
proxy server for
connection. Cliccare su OK e abbiamo configurato l'FTP.
Siamo pronti per
uppare: riapriamo File | Bookmarks appare la finestra divisa in due, nella parte
di
destra clicchiamo
col tasto destro su ftpperso.free.fr e selezioniamo Connect , appare la solita
finestra
Connessioni di
Accesso remoto, colleghiamoci ad Internet e nella finestrella superiore di
LeechFTP
vedrete apparire i
comandi FTP di connessione. Dopo qualche secondo nella finestra di destra
(remote
directory) dovrebbe
apparire il contenuto attuale del nostro spazio web, cioè la cartella xxxxxxx
dove
avevamo caricato il
nostro database (è accessibile solo mediante phpMyAdmin) e non via FTP. Nella
finestra centrale
ci sono le cartelle locali di nuke, selezioniamole tutte(cliccando una volta
sulla prima, e poi tenendo premuto il tasto Maiusc clicchiamo sull'ultima),
tasto destro, selezioniamo Upload files.
Nella finestra di
sinistra, Queue(=coda), dovrebbero essere caricati i circa 900 file di Nuke, poi
partiranno i vari
threads(=lavori), e se uppate di notte, potrete riuscire a uppare anche tre file
la volta. Se non avete l'ADSL ci vorranno dai 15 ai 30 minuti. Quando avrete
uppato tutti i file, la finestra del
remote directory
dovrebbe essere inattiva, selezionatew dal menu File | Bookmarks | clic destro
su
ftpperso.free.fr,
poi Connect, e vi apparirà il contenuto del vostro spazio web. Uppate anche
tutti i
files .php della
cartella principale come sopra, poi cliccate sull'icona Refresh (le due frecce
verdine a
cerchio della barra
degli strumenti). Per sicurezza clicchiamo sulla linguetta Failures nella
finestra di
sinistra, se è
vuota è andato tutto a buon fine. Bravi, birretta...
Il chmod è
un gioco da ragazzi: cliccate col tasto destro sui seguenti files nella remote
directory e
scegliete Set
attributes e spuntare tutti i read e i write, in modo che compaia il numero 666
(chmod 666,
appunto):
config.php, backend.php e ultramode.txt. Adesso chiudiamo tutto cliccando
sull'icona
Disconnect (quella
a forma di presa), chiudiamo Leechftp e siamo pronti al nostro primo portale on
line:
apriamo Internet
Explorer, colleghiamoci ad internet, scriviamo nella barra degli indirizzi l'URL
del
nostro portale, che
sarà http://miologin.free.fr et voilà PhpNuke !
Amministrazione
di Nuke
Se siamo riusciti a
visualizzare Nuke, vuol dire che siamo pronti ad amministrarlo via browser, come
si
fa via Internet.
Per entrare come Admin, amministrare e modificare ciò che vogliamo, dobbiamo
loggarci, cioè nel
blocco di destra inserire la username God e la password Password, facendo
attenzione
a digitare le
maiuscole iniziali, perché PHP è case-sensitive, cioè maiuscole e minuscole sono
caratteri
diversi e poi
cliccare sul tasto Login. Ricordatevi di accettare i cookies se vi viene
chiesto. Da questa
pagina potete
modificare qualsiasi parte del portale graficamente con i link. Buon
divertimento ! .
Sul blocco di
sinistra trovate nel Main menu il link Administration, cliccateci sopra e appare
il menu
dell'Administrator.
Selezionate Settings e potrete finalmente configurare il portale. Cambiate il
nome del
sito, il logo
ancora no, lo slogan che deve apparire, la site start date per le statistiche, e
poi ….i default
theme for your site
lo lasciate per ora così, più in basso selezionate Yes per Graphics in
administration
menu e in fondo
alla pagina cliccate sul tasto Save changes. Vedrete già i primi cambiamenti.
Ora rientrate in
Settings, cambiate il default theme for your site e poi Save changes. Vi piace ?
Provateli
tutti. E poi
guardiamolo in italiano sto portale . Nel blocco di sinistra, in fondo c'è
Languages, scegliete
italian e via.
Nella voce Admin
Messages, cliccate su Funzioni Modifica per cambiare il messaggio del blocco
centrale. Qui
potete inserire anche dell'HTML con dei link o delle immagini. Dalla voce Edit
Administrators
cambiate God e Password con i dati che volete, ma attenzione, spuntate la voce
superuser
altrimenti non potete più amministrare.
Ma la voce più
importante del menu è Blocks, poi Viewblocks. Da qui potrete modificare tutti bi
blochhi, spostarli
da sinistra, al centro a destra, visualizzarli o disattivarli, aggiungerne,
toglierli, ecc.
Insomma, dovete
imparare a gestire Nuke, prima di metterlo on line. Alla prossima puntata su
PostNuke on line. Buon Nuke.
Links utili
Intanto i siti
ufficiali, www.postnuke.com e www.postnuke.it , il sito ufficiale italiano,
ottimo come
forum per avere
risposte ai vari problemi dalla comunità italiana, scaricare nuovi themes, fix,
aggiornamenti,
moduli aggiuntivi, un sito da consultare giornalmente (vi troverete anche questa
dispensa, spero….).
Poi l'ottimo www.splatt.it , www.spaghettibrain.com e http://sourceforge.net ,
la
comunità di
sviluppatori di PostNuke, MySQL, e tanti altri programmi open source. Magari
potete
rendervi utili in
qualche modo……
Licenza
PhpNuke in locale e
remoto 1.0 è © 2002 di Angelo Gagliani. E' doveroso pubblicare, distribuire,
modificare e
aggiornare questa dispensa secondo i termini della Free Documentation License,
una
particolare forma
di licenza che permette a tutti la libertà di copia e di redistribuzione del
materiale, con
o senza modifiche,
a scopo no-profit e consente agli autori e agli editori di essere riconosciuti
per il
proprio lavoro pur
preservandoli dalla responsabilità di modifiche successivamente apportate ai
testi. In
sostanza vuol dire
che, se fate modifiche a questo documento siete obbligati a distribuire con la
stessa
licenza il
documento modificato.
La versione della
licenza avente valore legale si trova sul sito GNU
http://www.gnu.org/copyleft/fdl.html
.
In ogni caso
sarebbe carino contattare l'autore se voleste pubblicare l'opera o apportare
modifiche.
L'autore è
contattabile per posta elettronica all'indirizzo capra@free.fr .
La filosofia della
comunità GNU e Linux è quella della collaborazione reciproca. Quindi, se pensate
di
poter/voler
contribuire a questa dispensa aggiungendo sezioni e simili rimanendo fedeli
all'impostazione generale, fatevi avanti !