introduzione
Hugo è un generatore di sito statico con una velocità di rendering estremamente veloce e un'eccellente facilità d'uso. Grazie a tutte le sue funzionalità orientate al contenuto, puoi sempre concentrarti sulla creazione di contenuti piuttosto che sulla costruzione dell'ambiente:
- Con Hugo, puoi creare un sito statico in esecuzione ovunque in pochi minuti senza preoccuparti di dipendenze o database noiosi.
- Puoi comporre i tuoi contenuti in Markdown, lo stile di scrittura più conveniente e vedere istantaneamente le modifiche che hai apportato sul web.
- Inoltre, puoi ottenere il massimo dal ricco archivio di temi e dalla comunità in rapida crescita di Hugo.
In questo tutorial, ti mostrerò come installare e utilizzare Hugo per creare un sito di blog statico su un'istanza del server Vultr LEMP basata su CentOS.
Prerequisiti
Accedi alla tua istanza come utente non root con autorizzazioni sudo. Scopri come creare un utente del genere in questo articolo .
Passaggio 1: installare il programma Hugo
Hugo può essere installato su quasi tutte le piattaforme tradizionali. Per CentOS, devi solo scaricare il file del programma più recente in un .tar.gz
archivio e decomprimerlo in una posizione comoda. Al momento della scrittura, l'ultima versione è 0.15.
sudo yum update -y
sudo yum install git -y
cd ~
wget https://github.com/spf13/hugo/releases/download/v0.15/hugo_0.15_linux_amd64.tar.gz
tar -zxvf hugo_0.15_linux_amd64.tar.gz
sudo mv hugo_0.15_linux_amd64/hugo_0.15_linux_amd64 /usr/local/bin/hugo
Prova l'installazione con il seguente comando:
hugo version
Passaggio 2: crea il tuo sito
Con Hugo, puoi costruire il tuo sito da qualsiasi cartella sul tuo server. Qui, ho creato un sito nella directory mysite/
sotto la mia home directory.
cd ~
hugo new site ~/mysite
Esegui i seguenti comandi per visualizzare l'architettura del sito:
cd mysite
ls -lF
Come vedi, l'architettura attuale del sito ricorda:
archetipi /
config.toml
soddisfare/
dati/
layout /
statico/
Con altre due directory da creare themes/
e public/
l'intera architettura di un sito Hugo è compatta ma completa.
Per iniziare, sappi che i tuoi contenuti devono essere archiviati nella directory content/
.
Passaggio 3: installare i temi dal repository Hugo
Per installare tutti i temi dal repository Hugo, eseguire i seguenti comandi. Questi creeranno una directory denominata themes/
nella directory del tuo sito e scaricheranno tutti i temi dal repository dei temi di Hugo.
cd ~/mysite/
git clone --depth 1 --recursive https://github.com/spf13/hugoThemes.git themes
Se desideri solo installare un singolo tema, visita il repository dei temi di Hugo per determinare il tuo tema preferito. Copia il suo URL e incollalo nel git clone
seguente comando.
cd ~/mysite/
mkdir themes
cd themes
git clone https://github.com/jaden/twentyfourteen
Passaggio 4: apportare alcune modifiche alla configurazione di base
Il file indicato config.toml
nella directory del tuo sito contiene la configurazione globale per il tuo sito Hugo. Modifica il file con un editor di testo per apportare alcune modifiche alla configurazione di base come elencato di seguito. Ricorda di sostituire i valori in base alle tue condizioni specifiche.
baseurl = "http://[YourSiteIP]/"
languageCode = "en-us"
title = "Your Site Name"
theme = "twentyfourteen"
Passaggio 5: componi i tuoi contenuti
Nella directory del sito, immettere il seguente comando per creare una pagina di contenuto nella directory ~/mysite/content/post/
.
cd ~/mysite/
hugo new post/about.md
Apri il file in un editor di testo, il formato del file dovrebbe essere simile al seguente.
+++
date = "2015-12-25T03:21:23Z"
draft = true
title = "about"
+++
Tra le due linee di +++
bugie si trovano le meta informazioni sulla tua pagina di contenuti. Qui puoi rimuovere la linea draft = true
e modificare la linea del titolo come desideri.
Sotto la seconda +++
riga, aggiungi il contenuto che desideri visualizzare sulla pagina web. Ricorda di scrivere i tuoi contenuti nel linguaggio Markdown.
## This is an H2 headline
Text goes here.
Dopo aver completato questa modifica, tenere l'editor di testo aperto per un uso successivo.
Passaggio 6: modifica i contenuti con il server Hugo
Puoi utilizzare il web server integrato di Hugo per distribuire il tuo sito, che può visualizzare istantaneamente le tue modifiche sulla pagina web non appena modifichi il contenuto in un editor di testo.
Apri un altro terminale, configura le iptables
regole per consentire l'accesso al tuo sito sulla porta 1313 predefinita del server Hugo:
sudo iptables -I INPUT -p tcp --dport 1313 -j ACCEPT
Avviare il server Hugo:
hugo server --bind="[YourServerIP]"
Visita il tuo sito da un browser:
http://[YourServerIP]:1313
Ora puoi provare a modificare il contenuto del file di pagina nel terminale precedente o aggiungere / rimuovere un file di pagina. Scoprirai che qualsiasi modifica nella content/
directory verrà riflessa simultaneamente sullo schermo del tuo browser. Questa è un'ottima funzionalità per un blogger impegnato perché puoi sempre vedere immediatamente le tue modifiche per una migliore esperienza di composizione.
Al termine della modifica, premere Ctrl+C
per arrestare il server Hugo.
Passaggio 7: pubblica il tuo sito
Ora è il momento di pubblicare il tuo sito sul web. Esegui i seguenti comandi e Hugo genererà tutto il contenuto statico adatto alla pubblicazione nella public/
directory.
cd ~/mysite
hugo
Nota : Hugo non eliminerà i vecchi file generati in precedenza quando si eseguono i comandi sopra. Per evitare risultati imprevisti, è sempre possibile eliminare la public/
directory prima di eseguire il hugo
comando o specificare una nuova destinazione di output, come mostrato nel comando seguente.
hugo --destination=public2
Poiché il server Web Nginx è già in esecuzione sul server, è sufficiente copiare il contenuto della ~/mysite/public/
directory o altre directory di destinazione personalizzate nella directory Web /usr/share/nginx/html/
.
Elimina i file originali:
cd /usr/share/nginx/html/
sudo rm -rf background.jpg index.php logo.png
Copia i file del tuo sito statico nella directory web:
cd ~/mysite/public
sudo cp -R ~/mysite/public/. /usr/share/nginx/html/
Questo è tutto. Ora è possibile visitare il tuo sito super veloce statica dal proprio browser: http://[YourServerIP]
.
Per ulteriori dettagli, utilizzare il comando hugo help
o visitare il sito Web ufficiale di Hugo .