Ricerca nel sito web

Come installare BoltWire CMS con Nginx su Ubuntu 20.04 LTS


Su questa pagina

  1. Prerequisiti
  2. Per iniziare
    1. Aggiornamento del tuo sistema
    2. Installazione dei pacchetti richiesti

    1. Configurazione di Nginx

    1. Creazione di un database

    Bolt è un sistema di gestione dei contenuti leggero (CMS) costruito sul popolare framework PHP. Bolt è perfetto per una piccola impresa che desidera mantenere il proprio sito Web senza preoccuparsi di dover imparare l'HTML e altri linguaggi di programmazione. Bolt offre funzionalità avanzate come robusti markup wiki, e-commerce, galleria fotografica e generatore di album, galleria e lettore audio e libri degli ospiti.

    Boltwire si distingue per essere completamente gratuito per individui e gruppi di tutte le dimensioni che hanno bisogno di un CMS. Joe Casabona è il creatore di Boltwire e condivide la sua passione aiutando gli altri a ottenere il massimo dal suo progetto open source. Bolt è utilizzato in oltre 200 paesi per gestire oltre 500.000 siti web. I suoi sviluppatori sono volontari e si aspettano che tutti gli utenti prendano parte al progetto offrendo feedback e contribuendo al suo sviluppo.

    Bolt ha alcune caratteristiche uniche:

    • Generazione dinamica della pagina: una pagina può essere assemblata in base ai dati trovati durante il recupero dal database. Ad esempio, quando un utente inserisce una nuova voce in un diario online, altre voci del suo blog possono essere aggiunte dinamicamente senza dover aggiornare l'intera pagina web. Ciò consente tempi di caricamento più rapidi, in particolare con grandi quantità di pagine o elementi multimediali per categoria (ad esempio tutte le foto in una galleria fotografica).
    • Gestione e amministrazione dei contenuti: più utenti possono gestire i contenuti, per garantire che ciascun utente possa modificare solo determinate parti delle pagine. Possono anche essere limitati su ciò che possono vedere o modificare. Ad esempio, alla maggior parte delle persone non è consentito pubblicare nuovi articoli o aggiungere commenti liberamente; questo è riservato agli amministratori del sito. I lettori possono comunque visualizzare qualsiasi articolo senza effettuare prima l'accesso, se non diversamente specificato dall'amministratore.
    • Facilità d'uso: Bolt riduce notevolmente lo sforzo richiesto per creare pagine Web rispetto ad altri CMS come Joomla e Drupal. Le procedure guidate integrate in Bolt automatizzano gran parte del suo processo di configurazione, quindi non devi preoccuparti di come funzionano le cose sotto il cofano.
    • Facile estensibilità: poiché Bolt è open source, è facile creare nuovi moduli che estenderanno o aggiungeranno funzionalità a Bolt. Nuove funzioni sono spesso integrate nel software di base, rendendole ancora più facili da usare. Con circa 40 estensioni attualmente disponibili su Modboom, puoi facilmente estendere qualsiasi parte di Bolt che desideri senza doverti avventurare troppo in profondità nella programmazione PHP.
    • BoltWire è disponibile in diverse lingue: inglese (predefinito), tedesco, italiano, giapponese, polacco, portoghese e spagnolo. Oltre ai pacchetti BoltWire standard per le lingue di cui sopra, è disponibile anche una localizzazione completa in francese (100%) e olandese (oltre il 50%).

    Lo svantaggio è che c'è poco supporto disponibile a parte i forum di aiuto se hai domande su come funzionano le cose sotto il cofano nella tua lingua locale. A questo proposito, è tua responsabilità far funzionare le cose come vorresti. Tuttavia, se sei a tuo agio nell'usare un editor di testo e hai il tempo di lavorare su Bolt da solo, non c'è nulla che ti impedisca di creare un sito web semplice ma dall'aspetto professionale in pochi minuti.

    In questa guida impareremo come installare BoltWire sul server Ubuntu 20.04.

    Prerequisiti

    • Un nuovo server con Ubuntu 20.04.
    • Accesso root SSH completo o utente con privilegi sudo.
    • Un nome di dominio è registrato e punta al tuo server.

    Iniziare

    Prima di tutto, accedi a Ubuntu con SSH.

    ssh [e-mail protetta]_Indirizzo -p Numero_porta

    root è l'utente predefinito su Ubuntu, sostituisci root con il nome del tuo utente, se ne usi un altro.

    IP_Address è l'indirizzo del tuo server. Puoi verificarlo usando

    hostname -I  sulla riga di comando. Port_number deve essere 22 per SSH.

    hostname -I

    il '-p' dice a ssh di usare la porta specificata. Se non si specifica un numero di porta, viene utilizzato 22 .

    Se sei protetto da un firewall, la porta 22 potrebbe essere bloccata. In tal caso, cambia Port_number in qualcos'altro come 2222.

    Aggiornamento del tuo sistema

    Puoi verificare se il tuo sistema ha la versione corretta di Ubuntu installata con il seguente comando:

    sudo lsb_release -a

    Esempio di output:

    È sempre consigliabile aggiornare il sistema prima di installare i pacchetti.

    sudo apt-get update && apt-get upgrade -y

    -y è un comando che risponderà automaticamente Sì a tutte le domande durante il processo di aggiornamento. apt-get update aggiorna gli elenchi dei pacchetti e apt-get upgrade aggiorna il sistema.

    Esempio di output:

    L'aggiornamento potrebbe richiedere del tempo a seconda di quanti pacchetti devono essere scaricati e installati. Una volta completato l'aggiornamento, ti verrà chiesto di riavviare il server. Eseguendo il comando seguente per riavviare il sistema dopo gli aggiornamenti:

    sudo reboot

    Installazione dei pacchetti richiesti

    L'installazione di Bolt richiede l'installazione di un numero di pacchetti sul sistema. Alcuni dei pacchetti vengono installati in un ordine specifico. In questo caso, installeremo tutto il pacchetto necessario per l'installazione di Bolt con il comando seguente:

    sudo apt install -y curl wget vim git unzip socat bash-completion apt-transport-https

    socat è per il proxy, il che fa sembrare che Bolt sia in esecuzione sul server web.

    apt-transport-https consente alle operazioni della riga di comando come sudo apt update di funzionare con le connessioni https. bash-completion è un programma che consente a bash di completare automaticamente i comandi dopo aver digitato i primi caratteri.

    curl viene utilizzato per scaricare pacchetti e wget viene utilizzato per scaricare file come l'ultima versione di Bolt dal suo sito Web.

    Esempio di output:

    Installazione di Nginx

    Nginx viene utilizzato come proxy inverso per la gestione dei tuoi siti Web in Bolt. Nginx è leggero, facile da configurare e veloce. Eseguendo il comando seguente per installare Nginx

    sudo apt-get install nginx

    Digita y se richiesto, il processo di installazione verrà avviato automaticamente.

    Esempio di output:

    Una volta completata l'installazione, avvia il servizio nginx e abilitalo per l'esecuzione all'avvio del sistema

    sudo systemctl start nginx
    sudo systemctl enable nginx

    Per verificare e verificare se Nginx è attualmente in esecuzione o meno, utilizzare questo comando nel terminale.

    sudo systemctl status nginx

    Esempio di output:

    Configurazione di Nginx

    BoltWire CMS è installato nella directory /var/www/. Per accedere e testare BoltWire CMS, dobbiamo configurare il blocco del server Nginx per instradare automaticamente le richieste al percorso della cartella Webroot /var/www/per tutte le richieste di contenuto statico, nonché le richieste di file di moduli e plug-in.

    Eseguire i seguenti comandi per creare un nuovo file di configurazione denominato bolt.conf

    sudo nano /etc/nginx/sites-available/bolt.conf

    Compila il file di configurazione con il seguente contenuto:

    server {
    listen 80;
     listen [::]:80; 
     root /var/www/bolt; 
     index index.php index.html index.htm; 
     server_name bolt.example.com;

     location / { 
      try_files      $uri $uri/ /index.php?$query_string;
      } 

     location ~ [^/]\.php(/|$) { 
      try_files      /index.php =404;
      fastcgi_split_path_info ^(.+\.php)(/.+)$;
      fastcgi_index      index.php;
     fastcgi_pass       unix:/var/run/php/php7.2-fpm.sock;
      include         fastcgi_params;
      fastcgi_param  PATH_INFO    $fastcgi_path_info;
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      } 

    location = /bolt { 
     try_files        $uri /index.php?$query_string; 
     } 

    location ^~ /bolt/ { 
     try_files         $uri /index.php?$query_string; 
     } 

    }

    Il blocco del server Nginx che abbiamo appena creato utilizza la root del documento predefinita che è impostata sulla directory /var/www/. Se stai eseguendo BoltWire CMS in un ambiente server diverso, modifica il file conf e sostituisci il percorso della root del documento di conseguenza.

    La direttiva server_name configura l'URL che il tuo server web Nginx ascolterà. Sostituisci bolt.example.com con il tuo vero nome di dominio o indirizzo IP del server.

    try_files      $uri $uri/ /index.php?$query_string; Questa direttiva consente di gestire direttamente le richieste di percorso file se trovate. Ad esempio, se un utente tenta di accedere alla home page di BoltWire CMS dal browser, /index.php verrà utilizzato come file di indice se esiste altrimenti tornerà alla risposta PHP-FPM 404 Not Found.

    Dopo aver apportato le modifiche e averle salvate nel file bolt.conf, ricarica Nginx e riavvialo affinché la nuova configurazione abbia effetto.

    sudo systemctl reload nginx
    sudo systemctl restart nginx

    Controlla la configurazione di nginx eseguendo i seguenti comandi:

    sudo nginx -t

    Esempio di output:

    Installazione di MySQL

    BoltWire CMS richiede almeno la versione 4.2 del server MySQL, ma BoltWire CMS non funziona con 5.x+.

    Quindi hai diverse opzioni: Usa un server di database remoto come Microsoft SQL Server Implementa MySQL su tutte le macchine del server web (non consigliato) Aggiorna la tua versione di MySQL. Le prime opzioni sono abbastanza semplici, ma il tipo di aggiornamento è complesso.

    Per coloro che utilizzano uno stack LAMP (Linux, Apache, MySQL e PHP), non devono installare MySQL separatamente perché Ubuntu include già il server MySQL nel suo repository.

    Eseguendo il comando seguente per installare MySQL:

    sudo apt -y install mysql-server

    Esempio di output:

    Una volta completata l'installazione, eseguire il comando seguente per avviare il demone MySQL (server MySQL) per questa sessione e abilitarlo per l'esecuzione all'avvio del sistema:

    sudo systemctl start mysql
    sudo systemctl enable mysql 

    Creazione di una banca dati

    Useremo la riga di comando per creare un database chiamato bolt.

    Connettiti a mysql per creare un database eseguendo il comando seguente:

    sudo mysql -u root -p 

    Inserisci la password di root per mysql. Ora sei connesso alla console mysql. Per creare un database e un utente del database, eseguire il comando seguente:

    CREATE DATABASE bolt;
    CREATE USER 'bolt'@'localhost' IDENTIFIED BY 'mypassword';
    GRANT ALL ON bolt.* TO 'bolt'@'localhost'; 
    FLUSH PRIVILEGES; 
    exit

    CREATE USER bolt@localhost IDENTIFICATO DA miapassword creerà un utente bolt la cui password è miapassword. Usa una password sicura invece della parola mypassword qui! I privilegi di svuotamento ricaricheranno la tabella dei privilegi di concessione creata in precedenza.

    Installazione di PHP

    BoltWire CMS richiede PHP versione 7 o successiva e le sue intestazioni di sviluppo. Aggiungeremo ppa:ondrej/php PPA con la versione PHP richiesta (7.2), puoi cambiarla nella tua versione PHP necessaria da solo. Eseguire i seguenti comandi per aggiungere il ppa e aggiornare apt-get

    sudo apt -y install software-properties-common 
    sudo add-apt-repository ppa:ondrej/php 
    sudo apt-get update

    Eseguendo il comando seguente per installare PHP 7.2:

    sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mbstring php7.2-zip php7.2-pgsql php7.2-sqlite3 php7.2-curl php7.2-gd php7.2-mysql php7.2-intl php7.2-json php7.2-opcache php7.2-xml

    php7.2-cli è l'interfaccia della riga di comando per PHP7.2 e con php7.2-common installerà le estensioni php7.2, il modulo del server web (PHP) e le estensioni CLI standard. Con php7.2 -fpm installerà FastCGI Process Manager, un modo comune per eseguire applicazioni PHP dal tuo server web. php7.2-mbstring installerà le funzioni di stringa multibyte necessarie per BoltWire CMS. php7.2-opcache installerà opcode cache per PHP7.2, che fornisce prestazioni migliori e riduce il carico sul tuo server web memorizzando nella cache gli script compilati. php7.2-xml installerà le estensioni di elaborazione XML per PHP7.2, necessarie per utilizzare BoltWire CMS.

    Esempio di output:

    Dopo aver installato PHP 7.2, esegui i comandi seguenti per controllare la tua versione di PHP7.2:

    php -v 

    Esempio di output:

    Successivamente, apri il file di configurazione predefinito PHP per Nginx utilizzando l'editor di testo nano:

    sudo nano /etc/php/7.2/fpm/php.ini

    Ora apporteremo le modifiche alle seguenti righe:

    file_uploads = On
    allow_url_fopen = On
    memory_limit = 256M
    upload_max_filesize = 100M
    max_execution_time = 360
    date.timezone = America/St. Louis

    • file_uploads=On abilita la funzione di caricamento file su BoltWire CMS.
    • allow_url_fopen=On consente URL diretti o reindirizzamento HTTP su richieste con file caricati dal server web remoto.
    • memory_limit=256M è il limite di memoria PHP 7.2 in MB da impostare per i processi di lavoro Nginx, l'esecuzione di uno script PHP con un elevato consumo di memoria può causare un errore di runtime di php.
    • upload_max_filesize=100 M è la dimensione massima per un singolo file di caricamento sul sito BoltWire CMS, se si desidera abilitare il caricamento di file di dimensioni illimitate, modificare questo valore su 0.
    • max_execution_time=360 è il tempo massimo di esecuzione in secondi per l'esecuzione dello script PHP, se uno script supera questo valore verrà terminato.
    • date.timezone=America/St. Louis, il fuso orario della tua posizione per visualizzare correttamente i valori di data e ora del cliente nel sistema BoltWire CMS.

    Riavvia php7.2-fpm per rendere effettive le modifiche precedenti:

    sudo service php7.2-fpm restart

    Questo dovrebbe essere sufficiente per il PHP7.2 richiesto e i pacchetti correlati, passiamo al passaggio successivo.

    Installazione del compositore

    BoltWire CMS richiede che Composer aggiunga le librerie esterne richieste nel sito Web, quindi è necessario installarlo prima di continuare questo tutorial. Composer è un gestore di pacchetti per PHP che gestisce le dipendenze dei progetti PHP. È simile a NodeJSs npm o ruby gems.

    Per prima cosa, ci spostiamo nella home directory e scarichiamo il programma di installazione:

    sudo curl -sS https://getcomposer.org/installer -o composer-setup.php

    Il comando seguente installerà Composer:

    sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

    Quanto sopra scaricherà e installerà Composer come binario a livello di sistema nella directory /usr/local/bin.

    Puoi scegliere di configurare Composer solo per il tuo utente sostituendo la parte /usr/local/bin del comando con ~/user_

    Al termine dell'installazione, è possibile eseguire il comando seguente per verificare se l'installazione ha esito positivo.

    composer

    Esempio di output:

    Installazione di Bolt

    Ora che tutti i pacchetti richiesti sono stati installati, ora possiamo procedere con l'installazione di Bolt.

    Per prima cosa, ci spostiamo nella directory /var/www/ e scarichiamo l'ultima versione di Bolt CMS da GitHub con il seguente comando:

    cd /var/www/
    sudo git clone https://github.com/bolt/bolt.git

    Esempio di output:

    Una volta scaricato, dovresti vedere una directory denominata bolt con un singolo file denominato \composer.json\, che è il file di configurazione del composer per Bolt CMS.

    Ora ci spostiamo nella directory di Bolt e installiamo Bolt da lì:

    cd bolt
    sudo composer install

    Questo comando installerà tutti i file sorgente e le dipendenze Bolt richiesti in /var/www/bolt utilizzando il gestore pacchetti Composer.

    Esempio di output:

    Il passaggio successivo consiste nell'eseguire il seguente comando per impostare la directory di lavoro di Bolt:

    sudo chown -R www-data:www-data /var/www/bolt
    sudo chmod -R 755 /var/www/bolt

    Il comando precedente cambierà la proprietà dei file Bolt in www-data dell'utente Nginx, in modo che possa leggere e scrivere il file quando si accede all'URL Bolt.

    Il prossimo passo è configurare il file di configurazione del bullone:

    sudo cp app/config/config.yml.dist app/config/config.yml

    Accesso a BoltWire CMS

    Ora dovremmo essere in grado di accedere a BoltWire CMS utilizzando il seguente URL da un browser su computer Linux o Windows:

    Dovresti ottenere una pagina di destinazione CMS BoltWire predefinita come quella qui sotto:

    Compila tutte le informazioni richieste in questo modulo e potrai accedere alla tua bacheca BoltWire come quella qui sotto:

    Ora abbiamo configurato con successo un server Linux per Bolt Wire CMS.

    Se riscontri problemi quando provi ad accedere al tuo BoltWire CMS appena installato. Ecco un elenco degli errori comuni e delle loro possibili soluzioni:

    • \Accesso negato - errore\. Ciò significa che BoltWire CMS è in esecuzione ma non puoi accedere alle sue pagine dal browser, prova a controllare la directory di configurazione di Nginx.
    • \Impossibile caricare la libreria dinamica /var/www/BoltWire/vendor/php72-zip/libphp7. 2.so\ o \Errore durante l'esecuzione dello script\. Ciò significa che la directory BoltWire CMS non dispone delle autorizzazioni necessarie per eseguire ed eseguire il file PHP.
    • \Errore durante l'inizializzazione... File o directory non presenti\. Ciò significa che BoltWire CMS non è installato correttamente. Devi verificare se hai seguito la procedura corretta per l'installazione di BoltWire CMS.
    • \Autorizzazione negata\. Ciò significa che non hai un accesso adeguato alla directory /var/www/bolt o /var/www.
    • \Errore irreversibile: Classe PDO non trovata in...\. Ciò significa che PHP non è in grado di connettersi al database e potrebbe essere necessario controllare la configurazione di PHP.
    • \Ricerca di ... \ o \Attenzione: argomento fornito per foreach()...\ non valido. Ciò significa che BoltWire CMS non è in grado di trovare ciò che gli hai fornito. Di solito ciò è causato dall'ignoranza del nome del blog e dello slug o del percorso nella configurazione.
    • \Impossibile creare la directory... Indice non definito: dati visualizzati\. Ciò significa che BoltWire CMS non può creare la sua directory nel tuo server Nginx e potrebbe essere necessario controllare la configurazione PHP.
    • \Errore di analisi: errore di sintassi, imprevisto=in ... in ...\. Ciò significa che BoltWire CMS non può eseguire il suo file o non può leggere uno dei tuoi file. Ciò può accadere quando hai utilizzato una sintassi errata nella tua configurazione.
    • \404 non trovato nginx/1.14.0 (ubuntu)\ Aggiungere un record A per bolt.example.com verso il tuo server dovrebbe essere d'aiuto.
    • \404 Not Found\ o \L'URL richiesto... non è stato trovato su questo server\. Ciò significa che BoltWire CMS non è riuscito a trovare i suoi file. Potrebbe essere necessario controllare la configurazione di BoltWire e assicurarsi di aver specificato il percorso corretto.

    BoltWire è installato ma non ci sono pagine o la pagina di accesso BoltWire viene visualizzata se BoltWire CMS è installato, Bolt cercherà un modello BoltWire predefinito nella cartella /var/www/bolt/_templates all'interno della directory di installazione di Bolt e, in caso contrario, trova qualsiasi file lì, Bolt utilizzerà un file index.php nella directory di installazione di Bolts come home page. Se anche questo non funziona, qualcos'altro potrebbe essere sbagliato nella configurazione di PHP o nella configurazione di Nginx.

    Conclusione

    BoltWire CMS è un ottimo software per gestire un blog o un sito web personale. Puoi saperne di più su Bolt CMS dal sito ufficiale di BoltWire CMS.

    Speriamo che questo articolo ti aiuti a imparare come installare BoltWire sul server Ubuntu 20.04. Se ti piace questo articolo, condividilo con i tuoi amici su Twitter o Facebook. Se hai domande, non esitare a lasciare un commento qui sotto.