GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer BoltWire CMS avec Nginx sur Ubuntu 20.04 LTS

Bolt est un système de gestion de contenu (CMS) léger construit sur le framework PHP populaire. Bolt est parfait pour une petite entreprise qui souhaite gérer son propre site Web sans se soucier d'avoir à apprendre le HTML et d'autres langages de programmation. Bolt propose des fonctionnalités avancées telles que des balises wiki robustes, le commerce électronique, une galerie de photos et un créateur d'albums, une galerie et un lecteur audio et des livres d'or.

Boltwire se distingue par sa gratuité totale pour les particuliers et les groupes de toutes tailles qui ont besoin d'un CMS. Joe Casabona est le créateur de Boltwire et il partage sa passion en aidant les autres à tirer le meilleur parti de son projet open source. Bolt est utilisé dans plus de 200 pays pour gérer plus de 500 000 sites Web. Ses développeurs sont des bénévoles et attendent de tous les utilisateurs qu'ils participent au projet en donnant leur avis et en contribuant à son développement.

Bolt possède des caractéristiques uniques :

  • Génération de page dynamique :une page peut être assemblée en fonction des données trouvées lors de sa récupération dans la base de données. Par exemple, lorsqu'un utilisateur publie une nouvelle entrée dans un journal en ligne, d'autres entrées de son blog peuvent être ajoutées dynamiquement sans avoir à rafraîchir toute la page Web. Cela permet des temps de chargement plus rapides, en particulier avec de grandes quantités de pages ou d'éléments multimédias par catégorie (par exemple, toutes les photos d'une galerie de photos).
  • Gestion et administration du contenu :plusieurs utilisateurs peuvent gérer le contenu, afin de s'assurer que chaque utilisateur ne peut modifier que certaines parties des pages. Ils peuvent également être limités sur ce qu'ils sont autorisés à voir ou à modifier. Par exemple, la plupart des gens ne sont pas autorisés à publier de nouveaux articles ou à ajouter des commentaires librement; ceci est réservé aux administrateurs du site. Les lecteurs peuvent toujours consulter n'importe quel article sans se connecter au préalable, sauf indication contraire de l'administrateur.
  • Facilité d'utilisation :Bolt réduit considérablement les efforts nécessaires pour créer des pages Web par rapport à d'autres CMS tels que Joomla et Drupal. Les assistants intégrés à Bolt automatisent une grande partie de son processus de configuration afin que vous n'ayez pas à vous soucier de la façon dont les choses fonctionnent sous le capot.
  • Extensibilité facile :étant donné que Bolt est open source, il est facile de créer de nouveaux modules qui étendront ou ajouteront des fonctionnalités à Bolt. De nouvelles fonctions sont souvent intégrées au logiciel de base, ce qui les rend encore plus faciles à utiliser. Avec environ 40 extensions actuellement disponibles sur Modboom, vous pouvez facilement étendre n'importe quelle partie de Bolt sans avoir à vous aventurer trop profondément dans la programmation PHP.
  • BoltWire est disponible en plusieurs langues :anglais (par défaut), allemand, italien, japonais, polonais, portugais et espagnol. Outre les packages BoltWire standard pour les langues ci-dessus, une localisation complète est également disponible en français (100 %) et en néerlandais (plus de 50 %).

L'inconvénient est qu'il y a peu de support disponible en dehors des forums d'aide si vous avez des questions sur la façon dont les choses fonctionnent sous le capot dans votre langue locale. À cet égard, il est de votre responsabilité de faire fonctionner les choses comme vous le souhaitez. Cependant, si vous êtes à l'aise avec un éditeur de texte et que vous avez le temps de travailler vous-même sur Bolt, rien ne vous empêche de créer un site Web simple mais d'aspect professionnel en quelques minutes.

Dans ce guide, nous apprendrons comment installer BoltWire sur le serveur Ubuntu 20.04.

Prérequis

  • Un nouveau serveur exécutant Ubuntu 20.04.
  • Accès racine SSH complet ou utilisateur avec privilèges sudo.
  • Un nom de domaine est enregistré et pointe vers votre serveur.

Mise en route

Tout d'abord, connectez-vous à votre Ubuntu avec SSH.

ssh [email protected]_Address -p Port_number

root est l'utilisateur par défaut sur Ubuntu, remplacez "root" par le nom de votre propre utilisateur, si vous en utilisez un autre.

IP_Address est l'adresse de votre serveur. Vous pouvez vérifier cela en utilisant

nom d'hôte -I  sur la ligne de commande. Le numéro de port doit être 22 pour SSH.

hostname -I

le '-p' indique à ssh d'utiliser le port spécifié. Si vous ne spécifiez pas de numéro de port, 22 est utilisé .

Si vous êtes derrière un pare-feu, le port 22 peut être bloqué. Dans ce cas, remplacez Port_number par autre chose comme 2222.

Mise à jour de votre système

Vous pouvez vérifier si la bonne version d'Ubuntu est installée sur votre système avec la commande suivante :

sudo lsb_release -a

Exemple de résultat : 

Il est toujours conseillé de mettre à jour le système avant d'installer des packages.

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

-y est une commande qui répondra automatiquement "Oui" à toutes les questions pendant le processus de mise à jour. apt-get update met à jour les listes de packages et apt-get upgrade met à niveau votre système.

Exemple de résultat : 

La mise à jour peut prendre un certain temps en fonction du nombre de packages à télécharger et à installer. Une fois la mise à jour terminée, vous serez invité à redémarrer votre serveur. Exécutez la commande ci-dessous pour redémarrer votre système après les mises à jour :

sudo reboot

Installation des packages requis

L'installation de Bolt nécessite l'installation d'un certain nombre de packages sur votre système. Certains des packages sont installés dans un ordre spécifique. Dans ce cas, nous installerons tout le package requis pour l'installation de Bolt avec la commande ci-dessous :

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

socat est pour le proxy, ce qui donne l'impression que Bolt s'exécute sur le serveur Web.

apt-transport-https permet aux opérations de ligne de commande telles que sudo apt update de fonctionner avec des connexions https. bash-completion est un programme permettant à bash de compléter automatiquement les commandes après avoir tapé les premiers caractères.

curl est utilisé pour télécharger des packages et wget est utilisé pour télécharger des fichiers comme la dernière version de Bolt à partir de son site Web.

Exemple de résultat : 

Installer Nginx

Nginx est utilisé comme proxy inverse pour gérer vos sites Web dans Bolt. Nginx est léger, facile à configurer et rapide. Exécutez la commande ci-dessous pour installer Nginx

sudo apt-get install nginx

Tapez 'y' si vous y êtes invité, le processus d'installation démarrera automatiquement.

Exemple de résultat : 

Une fois l'installation terminée, démarrez le service nginx et activez-le pour qu'il s'exécute au démarrage du système

sudo systemctl start nginx
sudo systemctl enable nginx

Pour vérifier et vérifier si Nginx est en cours d'exécution ou non, utilisez cette commande dans le terminal.

sudo systemctl status nginx

Exemple de résultat : 

Configuration de Nginx 

BoltWire CMS est installé dans le répertoire /var/www/. Pour accéder et tester BoltWire CMS, nous devons configurer le bloc de serveur Nginx pour acheminer automatiquement les demandes vers le chemin du dossier racine Web /var/www/pour toutes les demandes de contenu statique ainsi que les demandes de fichiers de modules et de plugins.

Exécutez les commandes suivantes pour créer un nouveau fichier de configuration appelé bolt.conf

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

Remplissez le fichier de configuration avec le contenu suivant :

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; 
 } 

}

Le bloc de serveur Nginx que nous venons de créer utilise la racine du document par défaut qui est définie sur le répertoire /var/www/. Si vous exécutez BoltWire CMS dans un environnement de serveur différent, modifiez le fichier conf et remplacez le chemin de la racine du document en conséquence.

La directive server_name configure l'URL que votre serveur Web Nginx écoutera. Remplacez bolt.example.com par le nom de domaine ou l'adresse IP de votre serveur.

try_files      $uri $uri/ /index.php?$query_string; Cette directive vous permet de gérer directement les demandes de chemin de fichier si elles sont trouvées. Par exemple, si un utilisateur essaie d'accéder à la page d'accueil de BoltWire CMS à partir du navigateur, /index.php sera utilisé comme fichier d'index s'il existe, sinon il reviendra à PHP-FPM et retournera la réponse 404 Not Found.

Après avoir apporté des modifications et les avoir enregistrées dans le fichier bolt.conf, rechargez Nginx et redémarrez-le pour que la nouvelle configuration prenne effet.

sudo systemctl reload nginx
sudo systemctl restart nginx

Vérifiez la configuration de nginx en exécutant les commandes suivantes :

sudo nginx -t

Exemple de résultat : 

Installer MySQL

BoltWire CMS nécessite au minimum la version 4.2 du serveur MySQL, mais BoltWire CMS ne fonctionne pas avec 5.x+.

Vous avez donc plusieurs options :Utiliser un serveur de base de données distant tel que Microsoft SQL Server Implémenter MySQL sur toutes les machines du serveur Web (non recommandé) Mettre à niveau votre version de MySQL. Les premières options sont assez simples, mais le type de mise à niveau est complexe.

Pour ceux qui utilisent une pile LAMP (Linux, Apache, MySQL et PHP), ils n'ont pas besoin d'installer MySQL séparément car Ubuntu inclut déjà le serveur MySQL dans son référentiel.

Exécutez la commande ci-dessous pour installer MySQL :

sudo apt -y install mysql-server

Exemple de résultat : 

Une fois l'installation terminée, exécutez la commande ci-dessous pour démarrer le démon MySQL (serveur MySQL) pour cette session et lui permettre de s'exécuter au démarrage du système :

sudo systemctl start mysql
sudo systemctl enable mysql 

Créer une base de données

Nous allons utiliser la ligne de commande pour créer une base de données appelée bolt.

Connectez-vous à mysql pour créer une base de données en exécutant la commande ci-dessous :

sudo mysql -u root -p 

Entrez le mot de passe root pour mysql. Vous êtes maintenant connecté à la console mysql. Pour créer une base de données et un utilisateur de base de données, exécutez la commande ci-dessous :

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

CREATE USER 'bolt'@'localhost' IDENTIFIED BY 'mypassword' créera un utilisateur 'bolt' dont le mot de passe est 'mypassword'. Utilisez un mot de passe sécurisé au lieu du mot 'mypassword' ici ! Les privilèges de vidage rechargeront la table des privilèges d'octroi créée ci-dessus.

Installer PHP

BoltWire CMS nécessite PHP version 7 ou supérieure et ses en-têtes de développement. Nous ajouterons ppa:ondrej/php PPA avec la version PHP requise (7.2), vous pouvez la modifier vous-même pour la version PHP dont vous avez besoin. Nous allons exécuter les commandes suivantes pour ajouter le ppa et mettre à jour apt-get

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

Exécutez la commande ci-dessous pour installer 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 est l'interface de ligne de commande pour PHP7.2 et avec php7.2-common installera les extensions php7.2, le module de serveur Web (PHP) et les extensions CLI standard. Avec php7.2 -fpm installera FastCGI Process Manager, un moyen courant d'exécuter des applications PHP à partir de votre serveur Web. php7.2-mbstring installera les fonctions de chaîne multi-octets requises pour BoltWire CMS. php7.2-opcache installera le cache d'opcode pour PHP7.2, qui offre de meilleures performances et réduit la charge sur votre serveur Web en mettant en cache les scripts compilés. php7.2-xml installera les extensions de traitement XML pour PHP7.2, nécessaires pour utiliser BoltWire CMS.

Exemple de résultat : 

Après avoir installé PHP 7.2, exécutez les commandes ci-dessous pour vérifier votre version de PHP7.2 :

php -v 

Exemple de résultat : 

Ensuite, ouvrez le fichier de configuration PHP par défaut pour Nginx à l'aide de l'éditeur de texte nano :

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

Nous allons maintenant apporter les modifications sur les lignes suivantes :

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 active la fonctionnalité de téléchargement de fichiers vers BoltWire CMS.
  • allow_url_fopen =Activé autorise les URL directes ou la redirection HTTP sur les requêtes avec des fichiers téléchargés depuis le serveur Web distant.
  • memory_limit =256M est la limite de mémoire PHP 7.2 en Mo à définir pour les processus de travail Nginx, l'exécution d'un script PHP avec une consommation de mémoire élevée peut provoquer une erreur d'exécution php.
  • upload_max_filesize =100M est la taille maximale pour un seul fichier de téléchargement sur le site BoltWire CMS, si vous souhaitez activer le téléchargement de fichiers de taille illimitée, veuillez modifier cette valeur à 0.
  • max_execution_time =360 est le temps d'exécution maximum en secondes pour que le script PHP s'exécute, si un script dépasse cette valeur, il sera terminé.
  • date.timezone =Amérique/St. Louis, le fuseau horaire de votre emplacement pour afficher correctement les valeurs de date et d'heure du client dans le système BoltWire CMS.

Redémarrez php7.2-fpm pour appliquer les modifications ci-dessus :

sudo service php7.2-fpm restart

Cela devrait être suffisant pour le PHP7.2 requis et les packages associés, passons à l'étape suivante.

Installer Composer

BoltWire CMS nécessite que Composer ajoute les bibliothèques externes requises au site Web. Nous devons donc l'installer avant de poursuivre ce didacticiel. Composer est un gestionnaire de packages pour PHP qui gère les dépendances des projets PHP. Il est similaire aux gemmes npm ou ruby ​​de NodeJS.

Tout d'abord, nous nous déplaçons vers le répertoire d'accueil et téléchargeons le programme d'installation : 

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

La commande ci-dessous installera Composer :

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

Ce qui précède téléchargera et installera Composer en tant que binaire à l'échelle du système dans le répertoire /usr/local/bin.

Vous pouvez choisir de configurer Composer uniquement pour votre utilisateur en remplaçant la partie /usr/local/bin de la commande par ~/user_

Une fois l'installation terminée, vous pouvez exécuter la commande ci-dessous pour tester si l'installation a réussi.

composer

Exemple de résultat : 

Installer Bolt

Maintenant que tous les packages requis ont été installés, nous pouvons maintenant installer Bolt.

Tout d'abord, nous nous déplaçons dans le répertoire /var/www/ et téléchargeons la dernière version de Bolt CMS depuis GitHub avec la commande ci-dessous :

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

Exemple de résultat : 

Une fois téléchargé, vous devriez voir un répertoire nommé bolt avec un seul fichier nommé "composer.json", qui est le fichier de configuration du composeur pour Bolt CMS.

Passons maintenant au répertoire bolt et installons Bolt à partir de là :

cd bolt
sudo composer install

Cette commande installera tous les fichiers source et dépendances Bolt requis dans /var/www/bolt à l'aide du gestionnaire de packages Composer.

Exemple de résultat : 

L'étape suivante consiste à exécuter la commande suivante pour définir le répertoire de travail de Bolt :

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

La commande ci-dessus changera la propriété des fichiers Bolt en www-data de l'utilisateur Nginx, afin qu'il puisse lire et écrire le fichier lors de l'accès à l'URL Bolt.

L'étape suivante consiste à configurer le fichier de configuration des boulons :

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

Accéder au CMS BoltWire

Nous devrions maintenant pouvoir accéder à BoltWire CMS en utilisant l'URL suivante à partir d'un navigateur sur un ordinateur Linux ou Windows :

http://localhost:8000/bolt ou http://bolt.example.com/bolt

Vous devriez obtenir une page d'accueil BoltWire CMS par défaut comme celle ci-dessous :

Remplissez toutes les informations requises dans ce formulaire, vous pourrez accéder à votre tableau de bord BoltWire comme celui ci-dessous :

Nous avons maintenant configuré avec succès un serveur Linux pour Bolt Wire CMS.

Si vous rencontrez un problème lorsque vous essayez d'accéder à votre CMS BoltWire nouvellement installé. Voici une liste des erreurs courantes et leurs solutions possibles :

  • "Accès refusé - erreur ". Cela signifie que BoltWire CMS est en cours d'exécution mais que vous ne pouvez pas accéder à ses pages depuis le navigateur, essayez de vérifier votre répertoire de configuration Nginx.
  • "Impossible de charger la bibliothèque dynamique '/var/www/BoltWire/vendor/php72-zip/libphp7. 2.so " ou "Erreur lors de l'exécution du script". Cela signifie que le répertoire BoltWire CMS ne dispose pas des autorisations requises pour exécuter et exécuter le fichier PHP.
  • "Erreur lors de l'initialisation... Aucun fichier ou répertoire de ce type ". Cela signifie que BoltWire CMS n'est pas installé correctement. Vous devez vérifier si vous avez suivi la bonne procédure pour l'installation de BoltWire CMS.
  • "Autorisation refusée ". Cela signifie que vous n'avez pas un accès approprié au répertoire /var/www/bolt ou /var/www.
  • "Erreur fatale :classe 'PDO' introuvable dans... ". Cela signifie que PHP ne parvient pas à se connecter à la base de données et que vous devrez peut-être vérifier votre configuration PHP.
  • "Recherche de... " ou "Attention :argument non valide fourni pour foreach()...". Cela signifie que le CMS BoltWire est incapable de trouver ce que vous lui avez donné. Cela est généralement dû à l'ignorance du nom du blog et du slug ou du chemin dans votre configuration. .
  • "Impossible de créer le répertoire... Index non défini :données consultées ". Cela signifie que le CMS BoltWire ne peut pas créer son répertoire dans votre serveur Nginx et vous devrez peut-être vérifier la configuration PHP.
  • "Erreur d'analyse :erreur de syntaxe, '=' inattendu dans ... à ... ". Cela signifie que le CMS BoltWire ne peut pas exécuter son fichier ou qu'il ne peut pas lire l'un de vos fichiers. Cela peut arriver lorsque vous avez utilisé une syntaxe incorrecte dans votre configuration.
  • "404 introuvable nginx/1.14.0 (ubuntu) " Ajouter un enregistrement 'A' pour bolt.example.com vers votre serveur devrait aider.
  • "404 Not Found" ou "L'URL demandée ... n'a pas été trouvée sur ce serveur ". Cela signifie que BoltWire CMS n'a pas pu trouver ses fichiers. Vous devrez peut-être vérifier votre configuration BoltWire et vous assurer que vous y avez spécifié le bon chemin.

BoltWire est installé mais il n'y a pas de pages ou la page de connexion BoltWire s'affiche si BoltWire CMS est installé, alors Bolt recherchera un modèle BoltWire par défaut dans le dossier /var/www/bolt/_templates dans le répertoire d'installation de Bolt et si ce n'est pas le cas trouver n'importe quel fichier là-bas, Bolt utilisera un fichier index.php dans le répertoire d'installation de Bolt comme page d'accueil. Si cela ne fonctionne pas non plus, il se peut qu'il y ait un autre problème avec votre configuration PHP ou votre configuration Nginx.

Conclusion

BoltWire CMS est un excellent logiciel pour gérer un blog ou un site Web personnel. Vous pouvez en savoir plus sur Bolt CMS sur le site officiel de BoltWire CMS.

J'espère que cet article vous aidera à apprendre à installer BoltWire sur le serveur Ubuntu 20.04. Si vous aimez cet article, partagez-le avec vos amis sur Twitter ou Facebook. Si vous avez des questions, n'hésitez pas à laisser un commentaire ci-dessous.


Ubuntu
  1. Comment installer Seafile avec Nginx sur Ubuntu 20.04 LTS

  2. Comment installer Grav CMS avec Nginx sur Ubuntu 16.04

  3. Comment installer Seafile avec Nginx sur Ubuntu 18.04 LTS

  4. Comment déployer Modsecurity avec Nginx sur Ubuntu 20.04 LTS

  5. Comment installer BoltWire CMS sur Ubuntu 18.04 LTS

Comment installer Grav CMS avec Nginx sur Ubuntu 20.04

Comment installer phpMyAdmin avec Nginx (LEMP) sur Ubuntu 18.04 LTS

Comment installer Nginx avec le module Ngx_Pagespeed sur Ubuntu 16.04 LTS

Comment installer Joomla avec Nginx sur Ubuntu 18.04 LTS

Comment installer phpMyAdmin avec Nginx sur Ubuntu 20.04 LTS

Comment installer Bolt CMS sur Ubuntu 20.04 LTS