TYPO3 è un sistema di gestione dei contenuti (CMS) aziendale che si distingue per l'uso molto avanzato del codice, che dà sicurezza a un livello quasi inviolabile, e per la logica strutturale, che consente la gestione complessa di centinaia di pagine nonché una chiara divisione dei vari ruoli di amministrazione con vari requisiti di competenza. Per un utilizzatore, ad esempio, non è richiesta alcuna conoscenza di html, css o di qualsiasi altro linguaggio informatico e la gestione comporta una difficoltà anche minore rispetto a quella che si riscontra nel redigere un documento in Word o Writer.

TYPO3
software
Logo
Logo
TYPO3-Backend
TYPO3-Backend
TYPO3-Backend
GenereContent management system
SviluppatoreTYPO3 Association
Data prima versione1998
Ultima versione12.4 LTS (25 aprile 2023)
Sistema operativoLinux
Microsoft Windows
macOS
LinguaggioPHP
JavaScript
LicenzaGPL
(licenza libera)
LinguaInglese
Sito webtypo3.org/

È completamente scritto in PHP e può essere eseguito su diversi server web (come Apache o IIS), oltre a molti sistemi operativi e prevede la maggior parte dei database relazionali come MySQL, Oracle, PostgreSQL. TYPO3 è accreditato per essere altamente flessibile, in quanto il codice e il contenuto sono gestiti separatamente, inoltre ha un gestore di lingue avanzato già incorporato. Il nucleo di TYPO3 è composto da decine di moduli (chiamati “estensioni di sistema”), che sono strutturati secondo un protocollo ben definito. Per personalizzare l'installazione vengono aggiunti ulteriori estensioni che seguono lo stesso protocollo. Questi contengono plugin per le più svariate funzioni. In un repository vengono offerte estensioni pubbliche (per esempio: notizie, blog, speaking url, commercio elettronico, forum ecc.) che possono essere installate ed adoperate con pochi click.

Il sistema è stato creato dal danese Kasper Skårhøj, che ha pubblicato la prima versione nel 1997. TYPO3 è stato rilasciato sotto licenza GPL, open source che viene sviluppato e migliorato continuamente.

Caratteristiche

modifica

TYPO3 viene distribuito in formato compresso. Per poterlo installare è necessario decomprimerlo nella root-directory del proprio server web. Per completare l'installazione esiste uno strumento di installazione (Install-tool) che configura il sito in 5 passi.

Le principali caratteristiche di TYPO3 sono:

  • Alto grado di personalizzazione grazie a numerose estensioni, tutte disponibili con licenza libera;
  • Caching delle pagine per incrementare le prestazioni;
  • Rich Text Editor (CKeditor): un editor di testo che permette di formattare testi, link (interni ed esterni), liste e tabelle;
  • Traduzione delle funzionalità del software in 33 lingue;
  • Funzionalità multilingue che permette di realizzare siti in diverse lingue;
  • File-manager che permette di gestire file multimediali;
  • Potente Clipboard che permette di spostare contenuti di pagina, registri, pagine intere (inclusi i contenuti) da una pagina all'altra o di rilocarle nell'albero delle pagine; è possibile riempire la clipboard copiando o muovendo gli oggetti raccogliendoli anche da più pagine per scaricarli nella pagina di destinazione;
  • Opzione "Undo": è sempre possibile tornare alla versione precedente di un documento.

Estensioni

modifica

Le estensioni di TYPO3, che si trovano nella TYPO3 Extension Repository (TER), permettono di ampliare il sistema. Così è possibile integrare un grande numero di applicazioni sul proprio sito senza necessità di programmarle.

Le estensioni più usate sono:

  • News (tx_news): pubblica notizie in diverse categorie e offre una archiviazione (automatica);
  • Template Auto Parser (automaketemplate): crea automaticamente un Template' da un file HTML;
  • CKeditor: editor di testo, parte del nucleo di TYPO3;
  • Frontend User Registration (sr_feuser_register): permette all'utente di registrarsi per accedere a parti protette del sito;
  • RealURL: URLs like normal websites (realurl): indirizzi come quelli per pagine web statiche;
  • Shop System (tt_products): sistema di commercio elettronico con tante funzioni;
  • CHC Forum (chc_forum): gruppi di discussione.
  • SEO: decine di estensioni assicurano una migliore visibilità del sito nei motori di ricerca.

Inoltre è possibile programmare delle proprie estensioni per TYPO3. Le descrizioni per come fare si trovano su http://docs.typo3.org/.

Template

modifica

Per realizzare una pagina web con TYPO3 si usano diversi elementi:

  • Template-Fluid: una semplice struttura in HTML che contiene cosiddetti ViewHelper che poi vengono utilizzati da TYPO3 con diversi contenuti.
  • Template-TypoScript: con il linguaggio di configurazione di TYPO3 si definisce contenuti e altri variabili. Inoltre si configurano altri elementi.
  • Costanti di TYPO3
  • Estensioni

È anche possibile usare soltanto TypoScript per fare un sito. Come alternativa a tutto questo è pensabile usare per esempio l'estensione Templa Voilá per creare un Template.

Kasper Skårhøj Archiviato il 3 luglio 2006 in Internet Archive. comincia a sviluppare TYPO3.

1998 – Estate 1999

modifica

Il progetto TYPO3 viene portato avanti insieme all'agenzia web Superfish.com.

Agosto 1999 – agosto 2000

modifica

Dopo la rottura con Superfish.com (Kasper ottiene tutti i diritti su TYPO3) segue un anno di lavoro durante il quale Kasper finisce ciò che ha cominciato e pubblica una versione beta di TYPO3. Una settimana dopo si sposa.

Estate 2000 – 2002

modifica

La comunità di TYPO3 cresce e il sistema si evolve continuamente.

24 maggio 2002

modifica

Il primo "vero" release: TYPO3 versione 3.0. Durante la serie di versioni 3.x vengono sviluppate diverse funzioni nuove, per esempio l'Extension Manager.

Ramo Versione Data di rilascio Principali cambiamenti
3.x 03.00.00 2001 Prima versione pubblica
03.02.00 01/05/02 Diverse correzioni di bug
03.03.00 03/06/02 Diverse correzioni di bug

Prima versione ospitata su Sourceforge

03.05.00 18/02/03 Diverse correzioni di bug

Presentazione di Extension Manager: gli utenti possono ora scrivere i propri moduli di estensione

03.06.00 30/04/04 Crea codice XHTML in elementi di contenuto standard

Archiviazione XML per elementi di contenuto Introduzione del concetto di astrazione del database di base

03.07.00 24/09/04 Localizzazione dei contenuti semplificata

Sistema di autorizzazione esteso TypoScript-Engine rinnovato

03.08.00 23/05/05 Capacità multilingue per il backend (introduzione di language pack)

Supporto di GraphicsMagick Ricerca frontend migliorata

03.08.01 14/11/05 Diverse correzioni di bug e miglioramenti della sicurezza
4.x 04.00.00 07/04/06 Riprogettazione del backend per una migliore esperienza utente

Output HTML ristrutturato Presentazione delle skin di backend e del nuovo editor di testo RTF Introduzione agli spazi di lavoro (controllo delle versioni integrato) Implementazione di un livello di astrazione del database Consentire a TYPO3 di funzionare su Oracle e PostgreSQL Versione corrente: 4.0.13

04.01.00 06/03/07 Albero delle pagine migliorato con Ajax

Introduzione all'Inline Relational Record Editing (IRRE) Supporto UTF-8 migliorato e abilitazione delle funzionalità InnoDB Versione attuale: 4.1.15

04.02.00 24/05/08 Molti miglioramenti della GUI nel backend, comprese le funzionalità AJAX, le funzionalità estese dell'editor di testo

Miglioramento dell'accesso al frontend e del processo di aggiornamento delle estensioni Versione attuale: 4.2.17

04.03.00 30/11/09 Modifica del frontend

Caricatore Flash e cestino per il backend Nuovi rapporti di sistema e pianificazione del sistema Presentazione del nuovo framework di memorizzazione nella cache Miglioramenti della sicurezza con Salt (crittografia) e RSA Integrazione delle funzionalità Extbase e Fluid Versione attuale: 4.3.14

04.04.00 22/06/10 Riprogettazione completa del backend incl. miglioramenti delle prestazioni

Installazione semplificata, primo pacchetto introduttivo: un modello di sito web completo Compressione CSS e JavaScript , supporto HTML5 nel frontend Versione attuale: 4.4.15

4,5 LTS 26/01/11 Prima versione con supporto a lungo termine (LTS), fino a marzo 2015, incl. supporto di IE6

Supporto a lungo termine esteso (a pagamento), fino a marzo 2016 UTF-8 come set di caratteri predefinito e HTML5 nel backend Moduli di backend e gestore estensioni ricondizionati Protezione integrata contro CSRF Versione attuale: 4.5.40

04.06.00 25/10/11 Internazionalizzazione con XLIFF

Nuovo elemento di contenuto del modulo del sito web Miglioramenti della sicurezza e delle prestazioni Versione attuale: 4.6.15

04.07.00 24/04/12 Completa accessibilità per nuove installazioni sec. alle WCAG

Introduzione di nuovi elementi HTML5 come <audio> e <video>, miglioramenti per TCEforms Presentazione del pacchetto governo Versione attuale: 4.7.19

6.x 06.00.00 27 novembre 2012 Integrazione di un file abstraction layer (FAL)

Drag & Drop nel modulo Pagina Supporto per IPv6 Bootstrap standardizzato per i punti di montaggio Ultima versione: 6.0.14

06.01.00 30/04/13 Aggiornamenti automatici per il Core e per le traduzioni, ea

Ultima versione: 6.1.11

6.2 LTS 25 marzo 2014 Seconda versione con supporto a lungo termine (LTS), fino ad aprile 2017

File Abstraction Layer (FAL) rielaborato Strumento di installazione riscritto e aggiunta Gestione distribuzione Rendering reattivo delle immagini e anteprima del dispositivo mobile Nuovo modulo di documentazione aggiunto Funzionalità di sicurezza avanzate Ultima versione: 6.2.47

7.x 07.00.00 02/12/14 pulizia generale del codice, miglioramenti della velocità tramite l'outsourcing di un vecchio livello di compatibilità, aggiornamento dell'aspetto visivo del backend.
07.04.00 04/08/15 Revisione backend Vol 2
07.05.00 29/09/15 miglioramenti generali della base di codice, Backend Overhaul Vol 3
7.6 LTS 10/11/15 Terza versione con supporto a lungo termine (LTS), supporto fino a novembre 2018
8.x 08.00.00 22/03/16 pulizia generale del codice, miglioramenti della velocità tramite l'outsourcing del vecchio livello di compatibilità, aggiornamento dell'aspetto visivo del backend. Utilizzo di miglioramenti delle prestazioni tramite il requisito PHP7.
08.01.00 03/05/16 Degna di nota: integrazione con Doctrine, rielaborazione UX del modulo dell'area di lavoro, pulizia generale.
08.02.00 05/07/16 Supporto per Ogg, flac e opus

Rimosso il supporto per l'estensione per la compatibilità6 .

08.03.00 Il 30 agosto 2016 Doctrine DBAL migrazione

Rendering dell'albero con SVG Sintassi di collegamento unificata Supporto PHP 7.1

08.04.00 18/10/16 Backend mobile

API della documentazione Migrazioni più facili Accedi ai valori di flexform tramite TypoScript.

08.05.00 20/12/16 Nuovo framework dei moduli,

Integrazione di CKEditor

08.06.00 14/02/17 Miglioramenti nella modifica del frontend.
8.7 LTS 04/04/17 Long Term Support Release (LTS), correzioni di bug per 18 mesi, supporto di sicurezza per 36 mesi, fino a marzo 2020.
9.x 09.00.00 12/12/17 Primo di cinque versioni sprint per 9.x LTS. Strumento di installazione rifattorizzato nell'area di manutenzione del sistema. Nuova interfaccia utente dell'albero delle pagine. Nuove traduzioni di pagine.
09.01.00 30/01/18 Gestione personalizzata dei reindirizzamenti URL.
09.02.00 10/04/18 Nuovo modulo Sito per la configurazione di siti web e lingue separati in un progetto multisito.
09.03.00 12/06/18 Estensione SEO aggiuntiva.
09.04.00 04/09/18 Routing URL per le pagine "Speaking URLs for Routing", XML Sitemap.
9.5 LTS 02/10/18 Long Term Support Release (LTS), correzioni di bug per 18 mesi, supporto di sicurezza per 36 mesi, fino a settembre 2021.
10.x 10.00.00 23/07/19
10.01.00 01/10/19
10.02.00 03/12/19
10.03.00 25/02/20
10.4 LTS 21/04/20 Long Term Support Release (LTS), completamente supportato per 1,5 anni, sicurezza e correzioni fino ad aprile 2023[1][2].

Sicurezza

modifica

TYPO3 potrebbe essere vittima di[3]:

  • SQL injection o SQLi: un hacker può inserire istruzioni SQL dannose nel sito ottenendo potenzialmente l’accesso a dati sensibili presenti nel database o distruggendo questi dati
  • Cross-site scripting (XSS): permette a un cracker di inserire o eseguire codice lato client al fine di attuare un insieme variegato di attacchi quali, ad esempio, raccolta, manipolazione e reindirizzamento di informazioni riservate, visualizzazione e modifica di dati presenti sui server, alterazione del comportamento dinamico delle pagine web, ecc.
  • Il Cross-site request forgery, abbreviato CSRF o anche XSRF, è una vulnerabilità a cui sono esposti i siti web dinamici quando sono progettati per ricevere richieste da un client senza meccanismi per controllare se la richiesta sia stata inviata intenzionalmente oppure no.
  • Furto di identità
  • Esecuzione di codice in modalità remota: ottenere l'accesso a un account con privilegi riservati almeno al livelloauthor su un sito di destinazione per eseguire codice PHP arbitrario sul server sottostante, portando a un'acquisizione remota completa.
  • In un attacco di bypass dell'autorizzazione, un utente malintenzionato sfrutta le vulnerabilità in applicazioni o moduli di accesso mal progettati (ad esempio, convalida dell'input dei dati lato client)
  • Divulgazione di informazioni. Ciò significa che il sistema rende (in determinate circostanze) le informazioni disponibili a una persona esterna ossia dati sensibili dell'utente (ad esempio nomi, indirizzi, dati del cliente, dettagli della carta di credito, ecc.) O dettagli sul sistema (come la struttura del file system, il software installato, le opzioni di configurazione, i numeri di versione, ecc.).
  1. ^ Download TYPO3 - get.typo3.org, su get.typo3.org. URL consultato il 28 gennaio 2021.
  2. ^ (EN) TYPO3 v10 - Safe and Sound, su typo3.org. URL consultato il 28 gennaio 2021.
  3. ^ (EN) Types of Security Threats — TYPO3 Explained master documentation, su docs.typo3.org. URL consultato il 28 gennaio 2021.

Altri progetti

modifica

Collegamenti esterni

modifica