GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie Pimcore mit Nginx unter CentOS 7

Pimcore bietet ein kostenloses Open-Source-Enterprise-Content-Management-System. Es ist in PHP geschrieben und verwendet MySQL zum Speichern seiner Datenbank. Pimcore CMS ist völlig flexibel und editierbar, Sie können die Seite nach Ihren Wünschen personalisieren. Abgesehen von all diesen hat es viele Funktionen der Enterprise-Klasse, die es in die Lage versetzen, die Nachfrage nach Websites der Enterprise-Klasse zu erfüllen.

In diesem Tutorial installieren wir Pimcore CMS auf einem CentOS 7-Server.

Voraussetzung

  • Minimaler CentOS 7-Server
  • Root-Rechte

Schritt 1 - Installation von Nginx

Es wird empfohlen, den Server vor der Installation eines Pakets zu aktualisieren, damit die vorhandenen Pakete und Repositories aktualisiert werden.

yum -y install epel-release
yum -y update

Sobald Sie Ihr System aktualisiert haben, können Sie mit der Installation des Nginx-Webservers fortfahren.

yum -y install nginx

Starten Sie nun den Nginx-Webserver und aktivieren Sie ihn mit dem folgenden Befehl zum Starten beim Booten.

systemctl start nginx
systemctl enable nginx

Schritt 2 - Installation von PHP

Pimcore unterstützt alle PHP-Versionen größer als 5.6. Aber in diesem Tutorial werden wir PHP 7.1 installieren. Durch die Installation der neuesten Version von PHP wird die maximale Sicherheit und Leistung der Anwendung gewährleistet.

Das standardmäßige YUM-Repository von CentOS enthält kein PHP 7.1, daher müssen Sie das Webtatic-Repository in Ihrem System hinzufügen.

Geben Sie die Befehle ein, um das Webtatic-Repository zu installieren.

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum -y update

Geben Sie den folgenden Befehl ein, um PHP 7.1 zusammen mit allen erforderlichen Abhängigkeiten zu installieren.

yum -y install php71w php71w-mysqli php71w-fpm php71w-gd php71w-cli php71w-iconv php71w-dom php71w-simplexml php71w-exif php71w-fileinfo php71w-mbstring php71w-zlib php71w-zip php71w-bz2 php71w-openssl php71w-opcache php71w-curl php71w-pecl-redis ImageMagick

Um zu überprüfen, ob PHP erfolgreich installiert wurde, können Sie Folgendes ausführen:

php -v

Sie sollten eine ähnliche Ausgabe erhalten.

[[email protected] ~]# php -v
PHP 7.1.6 (cli) (built: Jun 10 2017 07:28:42) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.1.6, Copyright (c) 1999-2017, by Zend Technologies

Jetzt müssen Sie einige Konfigurationen in PHP konfigurieren. Öffnen Sie die PHP-Konfigurationsdatei php.ini mit Ihrem bevorzugten Texteditor.

nano /etc/php.ini

Suchen Sie die folgende Zeile, kommentieren Sie die Zeile aus und stellen Sie die Zeitzone entsprechend Ihrer Region ein. Zum Beispiel:

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Kolkata

Suchen Sie außerdem nach der folgenden Zeile:

upload_max_filesize = 2M

Ändern Sie den Wert von 2M in 100M und suchen Sie nach der folgenden Zeile:

post_max_size = 8M

Ändern Sie den Wert von 8M auf 100M. Speichern Sie die Datei und beenden Sie den Editor.

Öffnen Sie nun die PHP-FPM-Konfigurationsdatei unter /etc/php-fpm.d/www.conf:

nano /etc/php-fpm.d/www.conf

Suchen Sie die folgenden Zeilen:

user = apache
group = apache

Ändern Sie den Benutzer- und Gruppenwert von Apache auf nginx. Suchen Sie nun:

;listen.owner = nobody
;listen.group = nobody
;listen.mode = 0660

Entkommentieren Sie die obigen Zeilen und ändern Sie niemanden in nginx.

Und schließlich finden Sie:

listen = 127.0.0.1:9000

Kommentieren Sie die obige Zeile aus und fügen Sie die folgende Zeile darunter ein.

listen = /var/run/php-fpm/php-fpm.sock

Starten Sie nun den PHP-FPM-Dienst und aktivieren Sie ihn so, dass er beim Booten automatisch gestartet wird, indem Sie Folgendes verwenden:

systemctl start php-fpm
systemctl enable php-fpm

Schritt 3 – Installation von MariaDB

MariaDB ist ein Fork der MySQL-Datenbank. Um MariaDB auf Ihrem Server zu installieren, führen Sie Folgendes aus:

yum -y install mariadb mariadb-server

Führen Sie die folgenden Befehle aus, um MariaDB zu starten und zu ermöglichen, dass es beim Booten gestartet wird.

systemctl start mariadb
systemctl enable mariadb

Führen Sie nun die folgenden Befehle aus, um Ihre MariaDB-Installation zu sichern.

mysql_secure_installation

Der obige Befehl führt ein Skript aus, um eine neue MariaDB-Installation zu sichern. Das Skript fragt nach dem vorhandenen Root-Benutzerpasswort, wir haben gerade MariaDB installiert, das Root-Passwort ist nicht festgelegt, drücken Sie einfach die Eingabetaste, um fortzufahren.

Das Skript fragt Sie, ob Sie ein Root-Passwort für Ihre MariaDB-Installation festlegen möchten, wählen Sie y und legen Sie ein starkes Passwort für die Installation fest. Die meisten Fragen sind selbsterklärend und Sie sollten alle Fragen mit ja oder ja beantworten. Die Ausgabe sieht wie unten gezeigt aus.

Um eine Datenbank zu erstellen, müssen wir uns zuerst bei der MySQL-Befehlszeile anmelden. Führen Sie dafür den folgenden Befehl aus.

mysql -u root -p

Der obige Befehl meldet sich bei der MySQL-Shell des Root-Benutzers an und fordert zur Eingabe des Passworts des Root-Benutzers auf. Geben Sie das Passwort ein, um sich anzumelden. Führen Sie nun die folgende Abfrage aus, um eine neue Datenbank für Ihre Pimcore-Installation zu erstellen.

CREATE DATABASE pimcore_data CHARACTER SET UTF8;

Die obige Abfrage erstellt eine neue Datenbank namens pimcore_data. Stellen Sie sicher, dass Sie am Ende jeder Abfrage ein Semikolon verwenden, da die Abfrage immer mit einem Semikolon endet.

Um einen neuen Datenbankbenutzer zu erstellen, führen Sie die folgende Abfrage aus.

CREATE USER 'pimcore_user'@'localhost' IDENTIFIED BY 'StrongPassword';

Geben Sie nun Ihrem Datenbankbenutzer alle Berechtigungen für die von Ihnen erstellte Datenbank. Führen Sie den folgenden Befehl aus.

GRANT ALL PRIVILEGES ON pimcore_data.* TO 'pimcore_user'@'localhost';

Führen Sie nun den folgenden Befehl aus, um die Änderungen sofort auf die Datenbankberechtigungen anzuwenden.

FLUSH PRIVILEGES;

Beenden Sie die MySQL-Eingabeaufforderung mit dem folgenden Befehl.

EXIT;

Schritt 4 – Installieren zusätzlicher Serversoftware

Pimcore benötigte zusätzliche Serverpakete, die verwendet werden, um bestimmte Operationen mit Pimcore CMS auszuführen. Einige der Abhängigkeiten sind nur im RPMFusion-Repository verfügbar. Installieren Sie das RPM Fusion-Repository mit dem folgenden Befehl.

rpm -Uvh https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm

Führen Sie den folgenden Befehl aus, um die zusätzliche Serversoftware zu installieren.

yum -y install ffmpeg libreoffice libreoffice-math xorg-x11-fonts-75dpi poppler-utils inkscape libXrender ghostscript fontconfig wkhtmltopdf

Der obige Befehl installiert FFMPEG, LibreOffice, pdftotext, Inkscape und Wkhtmltoimage / Wkhtmltopdf.

Schritt 5 – Pimcore installieren und konfigurieren

Da wir alle Abhängigkeiten bereit haben, können wir jetzt das Installationspaket von der Pimcore-Website herunterladen.

cd /var/www

Pimcore bietet drei verschiedene Arten von Installationsarchiven. Wenn Sie Pimcore samt einsteigertauglichen Demodaten installieren möchten, können Sie Pimcore über den folgenden Link herunterladen.

wget https://www.pimcore.org/download/pimcore-data.zip

Wenn Sie nur das Pimcore-Kernpaket installieren möchten, können Sie den folgenden Link zum Herunterladen verwenden.

wget https://www.pimcore.org/download/pimcore-latest.zip

Die dritte Option besteht darin, den nächtlichen Build zu installieren, der nur zu Entwicklungszwecken dient. Der obige Befehl lädt immer die neueste Version von Pimcore herunter. Extrahieren Sie das Archiv mit dem folgenden Befehl.

unzip pimcore*.zip -d pimcore

Wenn Sie unzip nicht installiert haben, können Sie yum -y install unzip.

ausführen

Schritt 6 – Berechtigungen und Firewall konfigurieren

Jetzt müssen Sie dem Webserver-Benutzer mit dem folgenden Befehl den Besitz der Anwendung zur Verfügung stellen.

chown -R nginx:nginx /var/www/pimcore

Möglicherweise müssen Sie auch HTTP-Datenverkehr auf Port 80 durch die Firewall zulassen, wenn Sie eine Firewall ausführen. Führen Sie dafür die folgenden Befehle aus.

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

Führen Sie den folgenden Befehl aus, um SELinux vorübergehend zu deaktivieren, ohne den Server neu zu starten.

setenforce 0

Um SELinux vollständig zu deaktivieren, müssen Sie die Datei /etc/selinux/config bearbeiten.

nano /etc/selinux/config

Suchen Sie die folgende Zeile:

SELINUX=enforcing

Ändern Sie es in:

SELINUX=disabled

Erstellen Sie nun einen virtuellen Host oder Serverblock für die Pimcore-Anwendung. Führen Sie dafür den folgenden Befehl aus.

nano /etc/nginx/conf.d/cms.yourdomain.com.conf

Fügen Sie die folgenden Zeilen in die Datei ein.

server {
    root /var/www/pimcore;
    index index.php;
    server_name cms.yourdomain.com;
    listen 80;
    access_log  /var/www/pimcore/website/var/log/nginx_access.log;
    error_log   /var/www/pimcore/website/var/log/nginx_error.log error;
 
    set $getassets "";
    if ($uri ~* ^/website/var/assets)   { set $getassets "${getassets}A"; }
    if ($request_method = GET)      { set $getassets "${getassets}B"; }
    if ($getassets = "AB") {
        rewrite ^ $uri$args last;
    }
 
  location ~* ^(/plugins/(?!.*/static).*|^/pimcore/(?!(static|modules/3rdparty)).*|/website/var/(?!tmp|assets|areas)|/modules/(?!.*/static).*|^(vendor|tests|node_modules|phing)/.*|^(bower|package|composer|gulpfile)\.) {
        return 403;
    }
    
    location / {
        try_files $uri $uri/ /index.php$is_args$args;
        index index.php;
    }
 
    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
        include        fastcgi_params;
        fastcgi_read_timeout 60;
    }

    location ~* \.(jpe?g|gif|png|bmp|ico|css|js|pdf|zip|htm|html|docx?|xlsx?|pptx?|txt|wav|swf|svg|avi|mp\d)$ {
        access_log off;
        log_not_found off;
        try_files $uri $uri/ /website/var/assets$uri /index.php$is_args$args;
        expires 1w;
    }
    
  
    rewrite ^\/cache-buster-\d+(.*) $1 break;
    
    location /fpm-ping {
        access_log off;
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
    }

    location /fpm-status {
        allow 127.0.0.1;
        deny all;
        access_log off;
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
    }
    location /nginx-status {
        allow 127.0.0.1;
        deny all;
        access_log off;
        stub_status;
    }
}

Ersetzen Sie cms.yourdomain.com durch eine beliebige Domain oder Subdomain, die Sie für den Zugriff auf die Anwendung verwenden möchten. Speichern Sie die Datei und beenden Sie den Editor. Führen Sie den folgenden Befehl aus, um Ihren Nginx-Server neu zu starten.

systemctl restart nginx

Schließen Sie nun die Installation mit einem Webbrowser ab, gehen Sie auf den folgenden Link.

http://cms.yourdomain.com

Sie werden auf der folgenden Seite begrüßt.

Wählen Sie mysqli als Datenbankadapter, geben Sie die Details der Datenbank und des neuen Administratorbenutzers an. Klicken Sie auf Jetzt installieren! Taste einmal fertig. Die Installation dauert nur wenige Sekunden.

Schlussfolgerung

Die Installation von Pimcore ist jetzt abgeschlossen, Sie können Pimcore verwenden, um ganz einfach eine schöne Website für persönliche oder kommerzielle Zwecke zu erstellen.


Cent OS
  1. So installieren Sie WordPress mit Nginx unter CentOS 7

  2. So installieren Sie phpMyAdmin mit Nginx unter CentOS 7

  3. So installieren Sie Nextcloud mit Nginx und PHP 7.3 auf CentOS 8

  4. So installieren Sie Phorum mit Nginx unter CentOS 7

  5. So installieren Sie Magento 2 auf CentOS 8

So installieren Sie Laravel PHP Framework mit Nginx unter CentOS 8

So installieren Sie Nginx mit ngx_pagespeed unter CentOS

So installieren Sie Nginx mit PHP-FastCGI unter CentOS 6

So installieren Sie Magento mit Nginx unter CentOS 7

So installieren Sie LEMP auf CentOS 7

So installieren Sie Laravel PHP Framework mit Nginx unter CentOS 8