Recherche de site Web

Comment installer la plateforme de publication de blogs Ghost (CMS) dans CentOS 7


Ghost est un logiciel de blog ou de publication en ligne gratuit, open source, simple mais puissant, écrit en Nodejs. Il s'agit d'une collection d'outils de publication modernes conçus pour créer et gérer facilement des publications en ligne.

Caractéristiques fantômes :

  • Rapide, évolutif et efficace.
  • Offre un environnement d'édition basé sur les démarques.
  • Livré avec une application de bureau.
  • Livré avec de magnifiques modèles de guidon.
  • Prise en charge d'une gestion de contenu simple.
  • Prise en charge de plusieurs rôles pour les auteurs, éditeurs et administrateurs.
  • Permet de planifier du contenu à l'avance.
  • Prend en charge les pages mobiles accélérées.
  • Prend entièrement en charge l’optimisation des moteurs de recherche.
  • Fournit des données structurées détaillées.
  • Prend en charge les abonnements par RSS, Email et Slack.
  • Permet une édition simple du site et bien plus encore.

Exigences:

  1. Une installation minimale du serveur CentOS 7 avec 1 Go de mémoire
  2. Un système CentOS 7 avec une adresse IP statique
  3. Node v6 LTS – Installez les derniers Node.js et NPM dans CentOS 7
  4. Un serveur CentOS 7 avec Nginx installé

Important : Avant de commencer à installer Ghost vous-même, vous aurez besoin d'un bon hébergement VPS, nous recommandons fortement BlueHost.

Dans cet article, nous expliquerons comment installer une plateforme de blogs open source Ghost (Content Management System) sur un système CentOS 7.

Étape 1 : Installation de Nodejs sur CentOS 7

1. Nodejs n'est pas disponible dans les référentiels de logiciels de CentOS, ajoutez donc d'abord ses référentiels puis installez comme suit

curl --silent --location https://rpm.nodesource.com/setup_6.x | bash -
yum -y install nodejs npm
dnf -y install nodejs npm   [On Fedora 22+ versions]

2. Une fois nodejs installé, vous pouvez vérifier que vous disposez de la version recommandée de Nodejs et de npm installée à l'aide des commandes.

node -v 
npm -v

Étape 2 : Installation de Ghost sur CentOs 7

3. Créez maintenant le répertoire racine de Ghost qui stockera les fichiers de l'application dans le /var/www/ghost, qui est l'emplacement d'installation recommandé.

mkdir -p /var/www/ghost

4. Ensuite, téléchargez la dernière version de Ghost depuis le référentiel GitHub de Ghost et décompressez le fichier d'archive dans le répertoire que vous venez de créer ci-dessus.

curl -L https://ghost.org/zip/ghost-latest.zip -o ghost.zip
unzip -uo ghost.zip -d  /var/www/ghost

5. Accédez maintenant au nouveau répertoire ghost et installez Ghost (dépendances de production uniquement) avec les commandes suivantes. Une fois la deuxième commande terminée, Ghost devrait être installé sur votre système.

cd /var/www/ghost 
npm install --production

Étape 3 : Démarrer et accéder au blog Ghost par défaut

6. Pour démarrer Ghost, exécutez la commande suivante à partir du répertoire /var/www/ghost.

npm start --production

7. Par défaut, Ghost doit être exécuté sur le port 2368, ouvrez donc le port du pare-feu pour autoriser l'accès.

firewall-cmd --zone=public --permanent --add-port=2368/tcp
firewall-cmd --reload

8. Ouvrez maintenant un navigateur Web et accédez à l'une des URL suivantes ci-dessous.

http://SERVER_IP:2368
OR
http://localhost:2368

Remarque : Après avoir exécuté Ghost pour la première fois, le fichier config.js sera créé dans le répertoire racine de Ghost. Vous pouvez l'utiliser pour définir la configuration au niveau de l'environnement pour ghost ; où vous pouvez configurer des options telles que l'URL de votre site, la base de données, les paramètres de messagerie, etc.

Étape 4 : Installer et configurer Nginx pour Ghost

Installez et démarrez le serveur Web Nginx, s'il n'est pas installé à l'aide du référentiel EPEL, comme indiqué.

yum install epel-release
yum install nginx
systemctl start nginx

Si vous exécutez un pare-feu, utilisez les commandes suivantes pour activer l'accès au trafic HTTP et HTTPS.

firewall-cmd --permanent --zone=public --add-service=http 
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

L'étape suivante consiste à configurer Nginx pour qu'il serveur notre blog Ghost sur le port 80, afin que les utilisateurs puissent accéder au blog Ghost sans ajouter le port :2368 à la fin de l'URL.

Arrêtez d'abord l'instance Ghost en cours d'exécution en appuyant sur les touches CTRL+C du terminal.

Configurez maintenant Nginx en créant un nouveau fichier sous /etc/nginx/sites-available/ghost.

vi /etc/nginx/sites-available/ghost

Ajoutez la configuration suivante et assurez-vous de remplacer les lignes en surbrillance suivantes par your_domain_or_ip_address.

server {
    listen 80;
    server_name your_domain_or_ip_address;
    location / {
    proxy_set_header HOST $host;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass         http://127.0.0.1:2368;
    }
}

Enregistrez le fichier et activez cette configuration en créant un lien symbolique dans le répertoire /etc/nginx/sites-enabled.

ln -s /etc/nginx/sites-available/ghost /etc/nginx/sites-enabled/ghost

Ouvrez maintenant le fichier /etc/nginx.conf. incluez les fichiers de configuration dans le répertoire sites-enabled et désactivez le site par défaut comme indiqué.

vi /etc/nginx/nginx.conf

Ajoutez maintenant la ligne suivante dans le bloc http pour inclure les fichiers de configuration dans le répertoire sites-enabled.

http {
...
    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;

Ensuite, commentez totalement le bloc serveur par défaut trouvé à l'intérieur du bloc http.

...

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;


   server {
      listen       80 default_server;
      listen       [::]:80 default_server;
      server_name  _;
      root         /usr/share/nginx/html;
#
      # Load configuration files for the default server block.
      include /etc/nginx/default.d/*.conf;
#
      location / {
      }
#
      error_page 404 /404.html;
          location = /40x.html {
      }
#
      error_page 500 502 503 504 /50x.html;
          location = /50x.html {
      }
...
...

Enfin, enregistrez et redémarrez le serveur Web nginx.

systemctl restart nginx

Encore une fois, visitez http://your_domain_or_ip_address et vous verrez votre blog Ghost.

Pour plus d'informations, rendez-vous sur la page d'accueil de Ghost : https://ghost.org/

Dans cet article, nous avons expliqué comment installer et configurer Ghost dans CentOS 7. Utilisez le formulaire de commentaires ci-dessous pour nous envoyer vos questions ou vos réflexions sur le guide.

Enfin, dans notre prochain article, nous montrerons comment configurer Ghost dans Debian et Ubuntu. D’ici là, restez connecté à linux-console.net.