GNU/Linux >> LINUX-Kenntnisse >  >> Fedora

So installieren Sie Fuel CMS mit Nginx auf Fedora 31

Fuel CMS ist ein Open-Source-Content-Management-System für hochwertige Websites und Blogs. Es basiert auf CodeIgniter, einem beliebten PHP-Webframework. In dieser Anleitung erfahren Sie, wie Fuel CMS auf einem Fedora 31-basierten Server installiert wird.

Voraussetzungen

  • Ein Server mit Fedora 31, konfiguriert mit LEMP Stack. Folgen Sie dazu unserem Leitfaden.

  • Ein Nicht-Root-Sudo-Benutzer.

  • Stellen Sie sicher, dass alles aktualisiert ist.

    $ sudo dnf upgrade
    

MariaDB für Fuel CMS konfigurieren

Zuerst müssen wir eine Datenbank einrichten, die für das Fuel CMS verwendet werden soll. Melden Sie sich dazu bei der MySQL-Eingabeaufforderung an.

$ sudo mysql

Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, die eine Datenbank mit dem Namen fuelcms einrichten und ein Datenbankbenutzer namens fueluser und ihm Zugriff auf die Datenbank gewähren.

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

Konfiguriere PHP für Fuel CMS

In unserem Leitfaden haben wir PHP 7.4 installiert, aber Fuel CMS ist zum Zeitpunkt dieses Tutorials noch nicht damit kompatibel. Wenn es kompatibel wird, können Sie diesen Schritt überspringen.

Jetzt müssen wir PHP 7.3 neben PHP 7.4 installieren. Das geht ganz einfach mit dem folgenden Befehl.

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

Dadurch wird PHP 7.3 als Sammlung installiert, sodass Sie es gleichzeitig mit PHP 7.4 ausführen können.

Starten und aktivieren Sie den PHP 7.3-Dienst.

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

Um zu überprüfen, ob es richtig installiert ist, führen Sie den folgenden Befehl aus.

$ 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

Öffnen Sie die Datei /etc/opt/remi/php73/php-fpm.d/www.conf .

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

Wir müssen den Unix-Benutzer/die Gruppe von PHP-Prozessen auf nginx setzen . Suchen Sie user=apache und group=apache Zeilen in der Datei und ändern Sie sie in 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
...

Suchen Sie außerdem die Variable listen.acl_users und ändern Sie seinen Wert wie folgt.

listen.acl_users = nginx

Beachten Sie auch das Hören Variable. Es gibt Ihnen den Pfad, wo Sie den PHP-FPM-Prozess abhören können. Für uns zeigt es Folgendes.

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

Kopieren Sie den Pfad, da wir ihn benötigen.

Speichern Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden.

Starten Sie den PHP-fpm-Prozess neu.

$ sudo systemctl restart php73-php-fpm

Nginx konfigurieren

Führen Sie den folgenden Befehl aus, um eine Konfigurationsdatei für Fuel CMS hinzuzufügen.

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

Fügen Sie den folgenden Code in den Editor ein.

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

Diese Datei geht davon aus, dass wir Fuel CMS in der Domain example.com installieren werden und im Verzeichnis /var/www/fuel . Wir haben auch den Wert von listen verwendet Variable von oben, um einen Wert für fastcgi_pass anzugeben .

Aktivieren Sie diese Konfigurationsdatei, indem Sie sie mit sites-enabled verknüpfen Verzeichnis.

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

Testen Sie die Nginx-Konfiguration.

$ sudo nginx -t

Sie sollten die folgende Ausgabe sehen, die anzeigt, dass Ihre Konfiguration korrekt ist.

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

Laden Sie den Nginx-Dienst neu.

$ sudo systemctl reload nginx

Fuel CMS installieren

Erstellen Sie einen leeren Dokumentstammordner für Fuel CMS.

$ sudo mkdir -p /var/www/fuel

Das -p Argument stellt sicher, dass übergeordnete Verzeichnisse var und www werden automatisch erstellt, wenn sie nicht vorhanden sind.

Navigieren Sie zum Stammordner des Dokuments.

$ cd /var/www/fuel

Holen Sie sich die neueste Version von Fuel CMS aus seinem Git-Repository.

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

Extrahieren Sie die Datei in das Verzeichnis /var/www/fuel Ordner.

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

Erstellen Sie die sessions Verzeichnis.

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

Öffnen Sie die Datei /var/www/fuel/application/config/database.php .

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

Konfigurieren Sie die zuvor erstellten Datenbankparameter.

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

Speichern Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden.

Importieren Sie /var/www/fuel/install/fuel_schema.sql Datei in die neu erstellte Datenbank.

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

Generieren Sie einen zufälligen Verschlüsselungsschlüssel mit OpenSSL. Sie können anstelle von 20 eine beliebige Zahl verwenden.

$ openssl rand -base64 20

Als Ausgabe erhalten Sie einen zufälligen Schlüssel. Kopieren.

Öffnen Sie die Datei /var/www/fuel/fuel/application/config/config.php .

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

Ändern Sie den Wert von $config[‘encryption_key’] zu dem Schlüssel, den Sie im vorherigen Schritt erhalten haben.

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

Suchen Sie als Nächstes den Wert $config['sess_save_path'] und ändern Sie seinen Wert von NULL zu dem Sitzungspfad, den wir oben erstellt haben.

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

APPPATH bezieht sich hier auf /var/www/fuel/fuel/applications/ Verzeichnis. Speichern Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden.

Als nächstes müssen wir das Administrationsfenster aktivieren. Öffnen Sie dazu die Datei /var/www/fuel/fuel/application/config/MY_fuel.php .

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

Nehmen Sie die folgende Änderung vor.

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

Festlegen des fuel_mode auf automatisch erlaubt Fuel CMS, zuerst seine Datenbank auf die Seite zu überprüfen und wenn es nicht gefunden wird, wird es die Seite aus seinem Ansichtsordner aufnehmen. Sie können verschiedene andere Einstellungen ändern, wie den Namen der Site im Administrationsbereich, die Bild-Upload-Größe, eine E-Mail-Adresse und die Datei-Upload-Größe festlegen, einen Texteditor auswählen, eine Parser-Engine und ihre Konfiguration festlegen und eine Liste der zulässigen Module festlegen.

Speichern Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden.

Der letzte Schritt besteht darin, /var/www/fuel die richtigen Berechtigungen zu erteilen Verzeichnis.

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

Die Einrichtung ist nun abgeschlossen. Öffnen Sie fuel.example.com/fuel in Ihrem Browser und melden Sie sich mit den oben erstellten Anmeldeinformationen an und beginnen Sie mit der Entwicklung.

Fuel CMS konfigurieren

Sobald Sie sich im Administrationsbereich anmelden, werden Sie aufgefordert, das Passwort zu ändern. Klicken Sie auf Passwort ändern um fortzufahren.

Auf der sich öffnenden Seite können Sie Ihr Passwort ändern. Sie sollten auch Ihren Standardbenutzernamen ändern und eine E-Mail-Adresse hinzufügen. Sie müssen auch Ihren Namen eingeben, um fortzufahren. Speichern Sie, um fortzufahren, wenn Sie fertig sind.

Weitere Informationen finden Sie in der offiziellen Fuel CMS-Dokumentation.

Einrichten von HTTPS mit Let's Encrypt

Für die Verwendung von Let's encrypt müssen wir den Certbot installieren Paket.

Certbot installieren.

$ sudo dnf install certbot certbot-nginx -y

Installieren Sie das Zertifikat.

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

Wenn Sie das Tool zum ersten Mal auf diesem Server verwenden, müssen Sie den Bedingungen zustimmen und Ihre E-Mail-Adresse eingeben. Sag nein wenn Sie gefragt werden, ob Sie Ihre E-Mail mit der EFF-Stiftung teilen möchten.

Wenn das erfolgreich ist, certbot wird Sie fragen, wie Sie Ihre HTTPS-Einstellungen konfigurieren möchten.

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):

Wählen Sie 2 und drücken Sie dann ENTER . Ihr Zertifikat ist jetzt installiert und aktiviert.

Führen Sie den folgenden Befehl aus, um die automatische Verlängerung einzurichten.

$ 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

Starten Sie https://fuel.example.com in Ihrem Browser zu überprüfen.

Schlussfolgerung

Damit ist unser Tutorial abgeschlossen. Sie können jetzt Fuel CMS zum Erstellen Ihrer Websites verwenden. Wenn Sie Fragen haben, posten Sie sie in den Kommentaren.


Fedora
  1. So installieren Sie InvoicePlane mit Nginx unter CentOS 7

  2. So installieren Sie Bolt CMS auf Fedora 29

  3. So installieren Sie Phorum mit Nginx unter CentOS 7

  4. So installieren Sie Phorum mit Nginx auf Fedora 30

  5. So installieren Sie PHP 8 auf Fedora 35

So installieren Sie Fork CMS mit NGINX unter CentOS 8

So installieren Sie InvoicePlane mit Nginx unter Debian 9

So installieren Sie Nginx mit PHP und MariaDB (LEMP Stack) auf Fedora 31

So installieren Sie Grav CMS mit Nginx unter Ubuntu 20.04

So installieren Sie Grav CMS mit Nginx unter Debian 9

So installieren Sie Nginx auf Fedora 35