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ührenSchritt 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.