Annuncio pubblicitario
Per il navigatore medio di Internet, la visualizzazione di contenuti Web è semplice. Apri un browser, digita un URL e voilà! Viene visualizzata la pagina. Ma dall'altra parte, c'è un software che lavora sodo per servire quella pagina per te. E un gran numero di quei server sta sfruttando i sistemi di gestione dei contenuti per creare e servire i tuoi contenuti preferiti.
Cosa succede realmente quando "apri" una pagina da un CMS? Diamo un'occhiata alle diverse parti dei sistemi che portano contenuti sullo schermo.
The Early Web
Miglioramenti nell'hosting web
Alla fine degli anni '90, quando la rete ha iniziato a raccogliere vapore, molti dei componenti consentivano agli utenti di farlo accesso il loro contenuto Web preferito facilmente. Le cose erano progredite dal recupero delle pagine Web direttamente dai server di hosting a un sistema più sofisticato:
- Accesso più facile alla registrazione del Domain Name System tramite entità private, che ha permesso alle etichette arbitrarie che ora conosciamo come nomi di dominio di essere associate agli indirizzi IP. Ciò ha permesso agli utenti di trovare facilmente i loro siti preferiti.
- Il protocollo HTTP (HyperText Transfer Protocol) ha fornito un metodo standard per l'invio di informazioni su Internet. Ciò ha reso utile per le persone e le organizzazioni rendere i loro contenuti disponibili in HTML, in modo che chiunque potesse leggerli con un browser conforme.
- Sono apparsi server Web, il cui scopo è attendere le richieste di pagine Web e rispedire la pagina. Ciò ha reso facile per gli amministratori ridimensionare e proteggere i loro ambienti di hosting.
Durante questo periodo i browser sono diventati disponibili gratuitamente, offrendo fornitori di servizi Internet come AOL accesso dial-up illimitato e gli utenti sono passati da una comunità chiusa (come i sistemi BBS) ad un Web aperto soddisfare. Ma nonostante la richiesta di informazioni, una parte dell'ecosistema ha ancora sofferto.
Carenze nell'authoring Web
Il processo per la creazione di tutti quei primi siti Web era ancora incentrato su pagine realizzate a mano in HTML. Ciò ha spesso comportato uno stile in linea e un sacco di codice molto personalizzato, in particolare per i siti "dinamici" del giorno (ad esempio l'e-commerce fatto in lingue come Perl). Inoltre, il processo di editoriale un sito Web richiedeva ancora conoscenze tecniche sui trasferimenti FTP e l'hosting web.
Quindi, più contenuti generati dagli utenti hanno iniziato ad apparire sotto forma di siti di "profilo" come Yahoo e MySpace. I servizi di blogging come Blogger e LiveJournal hanno fatto un ulteriore passo avanti, mentre gli "editor di pagine Web" desktop hanno permesso di creare una pagina Web (di cattiva qualità) senza conoscere alcun markup. Questi hanno ispirato oggi sistemi di gestione dei contenuti per scopi generici, che consente agli utenti di:
- Crea nuove pagine con formattazione avanzata.
- Disporre le pagine in una gerarchia del sito.
- Gestisci i media su pagine, come immagini.
- Consentire ad altri utenti di interagire con il sito, fino a includere le proprie pagine.
Nelle sezioni seguenti vedremo esattamente come un CMS rende queste attività così semplici.
Componenti di un CMS
Esistono molte dozzine di applicazioni CMS disponibili oggi, ma la maggior parte di esse ha in comune quanto segue:
- Sono costruiti in un particolare linguaggio di programmazione / scripting. Al contrario di HTML, che è solo markup, un linguaggio di programmazione consente alle pagine Web di eseguire operazioni come determinare chi sta provando a usarle o recuperare risultati in base a una ricerca.
- Usano un database Quindi cos'è un database? [MakeUseOf Explains]Per un programmatore o un appassionato di tecnologia, il concetto di un database è qualcosa che può davvero essere dato per scontato. Tuttavia, per molte persone il concetto di database stesso è un po 'estraneo ... Leggi di più per archiviare il contenuto delle pagine, gli elenchi di utenti / password o l'input proveniente dai moduli inviati.
- Usano un server web Come configurare un server Web Apache in 3 semplici passaggiQualunque sia la ragione, ad un certo punto potresti voler avviare un server web. Sia che tu voglia concederti l'accesso remoto a determinate pagine o servizi, vuoi ottenere una community ... Leggi di più . Eseguirà i file della pagina (e la loro programmazione) e restituirà il codice HTML risultante al browser del visitatore.
Vedremo ciascuno di questi a turno di seguito.
Linguaggi di programmazione CMS
Una delle principali distinzioni tra diversi CMS è il linguaggio di programmazione che supportano Quale linguaggio di programmazione imparare - Programmazione WebOggi daremo uno sguardo ai vari linguaggi di programmazione web che alimentano Internet. Questa è la quarta parte di una serie di programmi per principianti. Nella parte 1, abbiamo imparato le basi di ... Leggi di più . I linguaggi di programmazione vengono utilizzati per rendere "dinamico" il sito, ovvero per eseguire calcoli o altra logica. Queste operazioni possono essere semplici come la visualizzazione dell'anno corrente nel copyright del piè di pagina per l'aggiunta e la visualizzazione di report numerici.
Esiste almeno un CMS per tutti i principali linguaggi di programmazione web, tra cui:
- PHP:WordPress, Drupal, Joomla
- ASP.NET:DotNetNuke (DNN CMS), Umbraco
- Pitone:Django, Plone
- Giava:all'aperto, Magnolia
Di queste lingue (e altre), PHP Impara a costruire con PHP: un corso intensivoPHP è la lingua che Facebook e Wikipedia usano per servire miliardi di richieste ogni giorno; il linguaggio di fatto utilizzato per insegnare alle persone la programmazione web. È meravigliosamente semplice, ma straordinariamente potente. Leggi di più è emerso come il leader nella creazione di sistemi di gestione dei contenuti per un paio di motivi. Innanzitutto, è open source, che all'inizio non si poteva dire di tutte le lingue. Di conseguenza era una lingua inclusa gratuitamente in molti dei piani di hosting economici in cui risiedono siti più piccoli. Inoltre, per la maggior parte delle misure è un linguaggio semplice per cominciare, che consente ai nuovi utenti di hackerare le proprie funzionalità nei loro siti. Infine, il web server Apache includeva PHP come modulo sin dall'inizio. Quindi impostare il web server leader nel mondo è stato semplice e veloce.
Mentre alcune altre lingue hanno compiuto progressi contro l'esempio di PHP (.NET è ora open source Un inizio GNU per Microsoft: cosa significa un framework .NET open source per il resto di noiMicrosoft ha appena rilasciato una parte significativa del suo codice con una licenza open source permissiva. Questa mossa si rompe con anni di tradizione. Ma perché e cosa significa per te? Leggi di più , ad esempio), ci vorrà del tempo prima che acquisiscano una quota di mercato significativa da artisti del calibro di WordPress.
Database CMS
Il linguaggio di programmazione di un determinato CMS determina anche i database o i database che supporta. PHP ha un eccellente supporto per MySQL Un tutorial passo-passo su MySQL per i blogger Wordpress self-hostedSe sei un blogger, è probabile che usi WordPress. Esistono due modi in cui è possibile utilizzare WordPress, ideale per quelli con un po 'di know-how tecnico e quelli senza. Il primo è quello di ... Leggi di più , sebbene i CMS che lo utilizzano spesso possano essere fatti funzionare con PostgreSQL o SQLite Impara SQL o crea un database semplice con il browser del database SQLiteTi sei mai trovato nel bisogno di un database, ma non puoi davvero permetterti di Microsoft Access e certamente non puoi permetterti di installare e gestire un server Oracle a casa. Se il tuo obiettivo è ... Leggi di più anche. Allo stesso modo, DNN CMS supporta Microsoft SQL Server, mentre Alfresco supporta database aziendali e compatibili con Java come Oracle e db2. Alla fine della giornata, il database che usi per un CMS può anche essere guidato da qualunque cosa il tuo ambiente di hosting fornisca. Un account di hosting per il tuo blog renderà quasi certamente MySQL a tua disposizione, mentre la tua azienda potrebbe usare solo Oracle.
Un database archivia la maggior parte del contenuto per la maggior parte dei CMS, ad eccezione dei file dell'applicazione (modelli di pagina, componenti aggiuntivi, ecc.), Dei media (immagini e video) e di alcune configurazioni. Ma il testo in una determinata pagina, così come i percorsi dei file multimediali e l'URL in cui si trova, viene spesso archiviato nelle tabelle DB.
Server Web CMS
Infine, un CMS è un'applicazione Web e pertanto richiede un server Web. Attraverso l'uso di vari moduli, Apache può supportare tutte e quattro le lingue sopra menzionate e altro. I server web più recenti stanno guadagnando popolarità Il miglior software per server Web Linux (e alternative Apache) Leggi di più , ad esempio nginx e lighttpd, supporta anche diversi set di lingue tramite componenti aggiuntivi.
Lo farà il web server eseguire i file del sito. Questi tipi di file (.PHP, .JSP e così via) sono in genere solo markup HTML 17 semplici esempi di codice HTML che puoi imparare in 10 minutiVuoi creare una pagina Web di base? Scopri questi esempi HTML e provali in un editor di testo per vedere come appaiono nel tuo browser. Leggi di più con codice del linguaggio di programmazione mischiato in. Mentre il server Web elabora la pagina, esegue qualsiasi codice programmatico che incontra con l'aiuto del suo modulo / componente aggiuntivo per quella lingua. Al termine dell'elaborazione di una pagina, il codice di programmazione sarà stato sostituito con una sorta di contenuto compatibile con il browser.
Se guardi da vicino sopra puoi vedere che il codice aiuta effettivamente a costruire la pagina "ottenendo" l'intestazione e il modello di pagina. Per rendere le cose più complicate, un file può chiamare uno o più altri file per assistenza. Mentre diamo un'occhiata ad alcune richieste effettive a un CMS nelle sezioni seguenti, tenere presente che l'esecuzione di "un file PHP" può effettivamente comportare l'esecuzione di molti.
Un CMS in azione
Il modo più semplice per descrivere un CMS è eseguire un paio di operazioni di esempio e seguire i passaggi per ciascuna. Come l'illustrazione precedente, questi processi iniziano con una richiesta per una pagina e terminano con il server Web che invia un po 'di HTML (e CSS / Javascript) al browser. Ma ci sono alcuni passaggi tra i quali esploreremo di seguito, ipotizzando un CMS basato su PHP.
Richiesta di una pagina
L'interazione di base con un CMS è un utente normale che richiede una delle sue pagine. Ad esempio, prendi Questo articolo 7 motivi per abbandonare il tuo CMS e considerare un generatore di sito staticoPer molti anni, pubblicare un sito Web è stato difficile per molti utenti. CMS come WordPress lo hanno cambiato, ma possono ancora essere fonte di confusione. Un'altra alternativa è un generatore di sito statico. Leggi di più su MakeUseOf. Ha un URL, ma non esiste alcun file effettivo in una directory in quella posizione. Quando il browser del lettore richiede un URL, il server Web esegue uno dei file PHP del CMS, ad esempio un index.php file.
La pagina PHP elabora la richiesta interrogando il database per la pagina CMS con l'URL corrispondente nei suoi metadati (di nuovo, non esiste alcun file effettivo nella posizione dell'URL). Quindi leggerà il contenuto della pagina (testo e grafica ordinaria, nonché widget) e metadati (titolo, quale modello utilizza, ecc.) dal DB e restituisce l'HTML della pagina per il browser il rendering. In breve, utilizza l'URL per selezionare quale record di pagina nel database usare.
Entrando
Allo stesso modo, un utente che desidera accedere al sito (ad es. per visualizzare una pagina "solo per membri" Come creare un sito Web per soli soci utilizzando Wordpress Leggi di più ) dovrà fornire le credenziali. Quando tentano di visitare la pagina in questione, il DB conterrà le autorizzazioni che indicano che la pagina richiede un accesso.
Inserendo un nome utente e una password in una pagina come login.php, chiederà al database la password del nome utente fornito, eseguirà il confronto per assicurarsi che corrispondano e rimanderà l'utente alla sua pagina richiesta, se applicabile.
Aggiornamento di una pagina
L'aggiornamento di una pagina in un CMS richiede in genere l'accesso alla sua schermata di amministrazione, la modifica del contenuto della pagina e il nuovo salvataggio / ri-pubblicazione. Ad esempio, WordPress contiene la pagina wp-admin / post.php. Per prima cosa verificherà se l'utente ha effettuato l'accesso e, in tal caso, se l'utente è un amministratore. Successivamente, eseguirà una query nel database per il contenuto che rappresenta la pagina che l'utente desidera modificare, compilando i controlli di modifica come aree di testo e selettori di immagini.
L'utente può interagire con questi controlli (ad esempio modificando il testo o sostituendo le immagini dell'intestazione), facendo clic sul pulsante "Salva" o "Pubblica" al termine. A questo punto la schermata di amministrazione prenderà i nuovi valori inseriti e li aggiornerà nel database.
I CMS rendono accessibile la creazione Web
Sebbene internamente siano applicazioni complesse, in superficie i CMS come WordPress facilitano l'authoring sul web per utenti non tecnici. Qualcuno che vuole pubblicare un semplice blog può iscriversi a account di hosting economico, fai clic su alcuni pulsanti e avere un CMS pronto per partire in pochi minuti Come installare WordPress su un server virtuale gratuitamente usando Cloud9Installa Wordpress in un ambiente virtuale usando lo spazio del server Cloud9. Nessuna codifica richiesta. Non è necessario scaricare software. Armeggi con un'installazione di WordPress tra un paio di minuti. Leggi di più . Per un paio di dollari in più, la società di hosting può persino gestirne gli aggiornamenti e la manutenzione.
Ospiti un sito Web o un blog su un particolare CMS? Avere un sistema di gestione dei contenuti ti semplifica il lavoro? O preferiresti semplicemente caricare HTML sul tuo account di hosting come in passato? Facci sapere nei commenti se sei un devoto CMS o un wrangler HTML della vecchia scuola.
Aaron è stato al gomito tecnologico come analista aziendale e project manager per quindici anni, ed è stato un fedele utente di Ubuntu per quasi tutto il tempo (dal Breezy Badger). I suoi interessi includono open source, applicazioni per piccole imprese, integrazione di Linux e Android e elaborazione in modalità testo normale.