GNU/Linux >> Tutoriels Linux >  >> Fedora

Comment installer Fuel CMS avec Nginx sur Fedora 31

Fuel CMS est un système de gestion de contenu open source pour les sites Web et les blogs de qualité supérieure. Il est construit sur CodeIgniter, un framework Web PHP populaire. Ce tutoriel explique comment installer Fuel CMS sur un serveur basé sur Fedora 31.

Prérequis

  • Un serveur exécutant Fedora 31 configuré avec LEMP Stack. Vous pouvez suivre notre guide pour le faire.

  • Un utilisateur sudo non root.

  • Assurez-vous que tout est mis à jour.

    $ sudo dnf upgrade
    

Configurer MariaDB pour Fuel CMS

Tout d'abord, nous devons configurer une base de données à utiliser pour le Fuel CMS. Pour ce faire, connectez-vous à l'invite MySQL.

$ sudo mysql

Une fois à l'invite, entrez les commandes suivantes qui configureront une base de données nommée fuelcms et un utilisateur de base de données nommé fueluser et accordez-lui l'accès à la base de données.

mysql> CREATE DATABASE fuelcms;
mysql> CREATE USER 'fueluser'@'localhost' IDENTIFIED BY 'yourpassword';
mysql> GRANT ALL PRIVILEGES ON fuelcms.* TO 'fueluser'@'localhost';
mysql> exit

Configurer PHP pour Fuel CMS

Dans notre guide, nous avons installé PHP 7.4 mais Fuel CMS n'est pas encore compatible avec celui-ci au moment de ce tutoriel. Lorsqu'il devient compatible, vous pouvez ignorer cette étape.

Maintenant, nous devons installer PHP 7.3 à côté de PHP 7.4. Cela peut être fait facilement en utilisant la commande suivante.

$ sudo dnf install php73-php-fpm php73-php-mysqlnd php73-php-cli -y

Cela installe PHP 7.3 en tant que collection, ce qui vous permet de l'exécuter simultanément avec PHP 7.4.

Démarrez et activez le service PHP 7.3.

$ sudo systemctl start php73-php-fpm
$ sudo systemctl enable php73-php-fpm

Pour vérifier s'il est correctement installé, exécutez la commande suivante.

$ php73 --version
PHP 7.3.16 (cli) (built: Mar 17 2020 10:18:38) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.16, Copyright (c) 1998-2018 Zend Technologies

Ouvrez le fichier /etc/opt/remi/php73/php-fpm.d/www.conf .

$ sudo nano /etc/opt/remi/php73/php-fpm.d/www.conf

Nous devons définir l'utilisateur/groupe Unix de processus PHP sur nginx . Trouvez le user=apache et group=apache lignes dans le fichier et changez-les en nginx.

...
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
...

Localisez également la variable listen.acl_users et modifiez sa valeur comme suit.

listen.acl_users = nginx

Notez également l'écoute variable. Il vous indiquera où écouter le processus PHP-FPM. Pour nous, cela montre ce qui suit.

listen = /var/opt/remi/php73/run/php-fpm/www.sock

Copiez le chemin car nous en aurons besoin.

Enregistrez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité.

Redémarrez le processus PHP-fpm.

$ sudo systemctl restart php73-php-fpm

Configurer Nginx

Exécutez la commande suivante pour ajouter un fichier de configuration pour Fuel CMS.

$ sudo nano /etc/nginx/sites-available/fuel.conf

Collez le code suivant dans l'éditeur.

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

  location / {
    try_files $uri $uri/ /index.php?q=$uri&$args;
  }

access_log /var/log/nginx/fuel.example.com.access.log;
error_log /var/log/nginx/fuel.example.com.error.log; location ~ \.php$ { fastcgi_pass unix:/run/php-fpm/www.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }

Ce fichier suppose que nous allons installer Fuel CMS sur le domaine example.com et dans le répertoire /var/www/fuel . Nous avons également utilisé la valeur de listen variable ci-dessus pour spécifier une valeur pour fastcgi_pass .

Activez ce fichier de configuration en le liant au sites-enabled répertoire.

$ sudo ln -s /etc/nginx/sites-available/fuel.conf /etc/nginx/sites-enabled/

Testez la configuration Nginx.

$ sudo nginx -t

Vous devriez voir la sortie suivante indiquant que votre configuration est correcte.

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Rechargez le service Nginx.

$ sudo systemctl reload nginx

Installer Fuel CMS

Créez un dossier racine de document vide pour Fuel CMS.

$ sudo mkdir -p /var/www/fuel

Le -p l'argument garantit que les répertoires parents var et www sont automatiquement créés s'ils n'existent pas.

Accédez au dossier racine du document.

$ cd /var/www/fuel

Récupérez la dernière version de Fuel CMS à partir de son référentiel Git.

$ sudo wget https://github.com/daylightstudio/FUEL-CMS/archive/master.zip

Extraire le fichier dans le /var/www/fuel dossier.

$ sudo unzip master.zip
$ sudo rm master.zip
$ sudo mv FUEL-CMS-master/* .
$ sudo rm -r FUEL-CMS-master

Créer les sessions répertoire.

$ sudo mkdir /var/www/fuel/fuel/application/sessions

Ouvrez le fichier /var/www/fuel/application/config/database.php .

$ sudo nano /var/www/fuel/fuel/application/config/database.php

Configurez les paramètres de base de données que nous avons créés auparavant.

$db['default'] = array(
        'dsn'   => '',
        'hostname' => 'localhost',
        'username' => 'fueluser',
        'password' => 'yourpassword',
        'database' => 'fuelcms',
        'dbdriver' => 'mysqli',

Enregistrez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité.

Importez le /var/www/fuel/install/fuel_schema.sql fichier dans la base de données nouvellement créée.

$ mysql -u fueluser -p fuelcms < /var/www/fuel/fuel/install/fuel_schema.sql

Générez une clé de chiffrement aléatoire à l'aide d'OpenSSL. Vous pouvez utiliser n'importe quel nombre au lieu de 20.

$ openssl rand -base64 20

Vous obtiendrez une clé aléatoire en sortie. Copiez-le.

Ouvrez le fichier /var/www/fuel/fuel/application/config/config.php .

$ sudo nano /var/www/fuel/fuel/application/config/config.php

Modifiez la valeur de $config[‘encryption_key’] à la clé que vous avez obtenue à l'étape précédente.

$config['encryption_key'] = 'nisT56baLm+U24ZYFRvVbVKIdOE=';

Ensuite, localisez la valeur $config['sess_save_path'] et changez sa valeur de NULL au chemin de session que nous avons créé ci-dessus.

$config['sess_save_path'] = APPPATH.'sessions/';

APPPATH fait ici référence au /var/www/fuel/fuel/applications/ annuaire. Enregistrez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité.

Ensuite, nous devons activer le panneau d'administration. Pour cela, ouvrez le fichier /var/www/fuel/fuel/application/config/MY_fuel.php .

$  sudo nano /var/www/fuel/fuel/application/config/MY_fuel.php

Effectuez la modification suivante.

// whether the admin backend is enabled or not
$config['admin_enabled'] = TRUE;
....
$config['fuel_mode'] = 'auto';

Définition du fuel_mode à auto permet à Fuel CMS de vérifier d'abord sa base de données pour la page et si elle n'est pas trouvée, il récupérera la page de son dossier de vue. Vous pouvez modifier divers autres paramètres tels que le nom du site dans le panneau d'administration, la taille de téléchargement d'image, définir un e-mail, la taille de téléchargement de fichier, sélectionner un éditeur de texte, définir un moteur d'analyse et sa configuration et définir une liste de modules autorisés.

Enregistrez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité.

La dernière étape consiste à donner les autorisations appropriées au /var/www/fuel répertoire.

sudo chown -R nginx:nginx /var/www/fuel

La configuration est maintenant terminée. Ouvrez fuel.example.com/fuel dans votre navigateur et connectez-vous avec les informations d'identification que vous avez créées ci-dessus et commencez à développer.

Configuration de Fuel CMS

Une fois connecté au panneau d'administration, vous serez invité à modifier le mot de passe. Cliquez sur Modifier le mot de passe pour continuer.

Sur la page qui s'ouvre, vous pouvez modifier votre mot de passe. Vous devez également modifier votre nom d'utilisateur par défaut et ajouter une adresse e-mail. Vous devrez également remplir votre nom pour continuer. Enregistrez pour continuer lorsque vous avez terminé.

Pour plus d'informations, reportez-vous à la documentation officielle de Fuel CMS.

Configurer HTTPS avec Let's Encrypt

Pour utiliser Let's encrypt, nous devons installer le Certbot paquet.

Installez Certbot.

$ sudo dnf install certbot certbot-nginx -y

Installez le certificat.

$ sudo certbot --nginx -d fuel.example.com

Si c'est la première fois que vous utilisez l'outil sur ce serveur, vous devez accepter les conditions et saisir votre adresse e-mail. Dites non lorsqu'on vous demande si vous souhaitez partager votre e-mail avec la fondation EFF.

Si cela réussit, certbot vous demandera comment vous souhaitez configurer vos paramètres HTTPS.

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
-------------------------------------------------------------------------------
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
-------------------------------------------------------------------------------
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):

Sélectionnez 2 puis appuyez sur ENTER . Votre certificat est maintenant installé et activé.

Exécutez la commande suivante pour configurer le renouvellement automatique.

$ echo "0 0,12 * * * root python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew" | sudo tee -a /etc/crontab > /dev/null

Lancez https://fuel.example.com dans votre navigateur pour vérifier.

Conclusion

Ceci conclut notre tutoriel. Vous pouvez maintenant utiliser Fuel CMS pour créer vos sites Web. Si vous avez des questions, postez-les dans les commentaires.


Fedora
  1. Comment installer InvoicePlane avec Nginx sur CentOS 7

  2. Comment installer Bolt CMS sur Fedora 29

  3. Comment installer Phorum avec Nginx sur CentOS 7

  4. Comment installer Phorum avec Nginx sur Fedora 30

  5. Comment installer PHP 8 sur Fedora 35

Comment installer Fork CMS avec NGINX sur CentOS 8

Comment installer InvoicePlane avec Nginx sur Debian 9

Comment installer Nginx avec PHP et MariaDB (pile LEMP) sur Fedora 31

Comment installer Grav CMS avec Nginx sur Ubuntu 20.04

Comment installer Grav CMS avec Nginx sur Debian 9

Comment installer Nginx sur Fedora 35