Installation gängiger Software

Last change on 2023-06-22 • Created on 2020-01-20 • ID: KO-B94B8

Die Installation und Verwendung folgender Programme geschieht auf eigene Verantwortung des Kunden. Ein Anrecht auf Supportleistungen in diesem Zusammenhang besteht nicht. Zu technischen Fragen zur konsoleH oder zur Serverkonfiguration stehen wir gerne zur Verfügung.

Software Installer

Sie können auf einem Managed Server via SSH eigene Software mit dem Programm "software" installieren.

Bitte beachten Sie, dass bei einiger Software das Debian-Paket "hos-dev" benötigt wird. Sie können dies in einer Supportanfrage via konsoleH anfordern.

 Benutzung:
   software install [PACKAGE]
   software upgrade [PACKAGE]
   software uninstall [PACKAGE]
 Getestet Pakete listen:
   software list
 Alle verfügbaren Pakete listen:
   software list all
 Alle installieren Pakete listen:
   software list installed

Allgemeine Informationen und Tipps

Prozessfreigaben

Wenn ein Prozess auf einem Managed Server dauerhaft laufen soll, so ist eine Prozessfreigabe nötig. Eine solche Freigabe ist ebenso nötig, wenn das Programm mehr RAM benötigen sollte. Meistens erkennen Sie ebenso, dass eine Prozessfreigabe nötig ist, wenn Ihr Prozess mit "KILLED" beendet wird.

Bitte schreiben Sie uns hierfür eine Supportanfrage aus der konsoleH und nennen Sie uns den Prozess oder das Programm.

  • Prozess "java": glassfish, tomcat, apache solr, elasticsearch
  • Prozess "rslsync": Resilio Sync
  • Prozess "wkhtmltopdf": wkhtmltopdf
  • Prozess "ruby": Ruby
  • Prozess "nginx": Nginx
  • Prozess "varnishd": Varnish
  • Prozess "mongo / mongod": MongoDB

Portfreigaben

Bitte beachten Sie, dass Portfreigaben in der Regel nicht notwendig sind und ein erhebliches Sicherheitsrisiko darstellen!

Portfreigaben


Apache-Solr

Apache Solr ist eine in Java geschrieben Suchplattform.

Um Solr installieren zu können werden weitere Compiler benötigt. Bitte fragen Sie via Supportanfrage nach dem Paket "hos-dev".

Installation

software install solr

Solr nutzen

Mit folgendem Befehl starten Sie Apache-Solr:

solr start

Die Bildschirmausgabe sollte wie folgt lauten:

Waiting up to 30 seconds to see Solr running on port 8983 [/]
Started Solr server on port 8983 (pid=19302). Happy searching!

@reboot Cronjob

Damit der Daemon nach einem Neustart des Server nicht manuell gestartet werden muss, kann man einen Cronjob einstellen. Wechseln Sie hierzu in die KonsoleH und wählen die entsprechende Account-Domain aus. Wechseln Sie anschließend in das Menü "Einstellungen; Cronjob Manager; Erweiterte Ansicht". Fügen Sie folgende Zeile am Ende ein und kicken Sie anschließend auf "Speichern":

@reboot /usr/home/<USERNAME>/.linuxbrew/bin/solr start

Der Pfad muss gegebenenfalls an Ihren angepasst werden.

Zusätzliche Konfiguration (optional)

Wenn Solr von außen erreicht werden soll, muss die .htaccess angepasst werden. In der .htaccess im Document Root des Accounts muss folgendes ergänzt/eingetragen werden:

RewriteEngine on
RewriteRule   ^(.*)  http://localhost:8983/$1 [P]

Wichtig: Bitte sichern Sie solr entsprechend ab (beispielsweise via Passwort), andernfalls können Ihre Daten durch Dritte abgegriffen werden.

https://lucene.apache.org/solr/
https://www.solrtutorial.com/solr-in-5-minutes.html
https://yonik.com/solr-4-tutorial/


Apache-Tomcat

Apache Tomcat ist ein Open-Source-Webserver und Webcontainer, der die Spezifikation für Java Servlets und JavaServer Pages implementiert und es damit erlaubt, in Java geschriebene Web-Anwendungen auf Servlet- beziehungsweise JSP-Basis auszuführen.

Hierfür wird das hos-dev Paket benötigt. Dies können Sie via Supportanfrage über die konsoleH anfragen.

Installation

software install tomcat

Tomcat starten

catalina run

Um zu prüfen, ob Tomcat läuft, müssen Sie nur die Website des Accounts mit dem eingestellten Port aufrufen.

curl http://localhost:8080/examples/servlets/servlet/HelloWorldExample

@reboot Cronjob

Damit der Daemon nach einem Neustart des Server nicht manuell gestartet werden muss, kann man einen Cronjob einstellen. Wechseln Sie hierzu in die KonsoleH und wählen die entsprechende Account-Domain aus. Wechseln Sie anschließend in das Menü "Einstellungen; Cronjob Manager; Erweiterte Ansicht". Fügen Sie folgende Zeile am Ende ein und kicken Sie anschließend auf "Speichern":

@reboot /usr/home/<USERNAME>/.linuxbrew/bin/catalina run

Der Pfad muss gegebenenfalls an Ihren angepasst werden.

Zusätzliche Konfiguration (optional)

Wenn Tomcat hinter einem Apache Proxy sitzen soll, muss die .htaccess und die Datei server.xml angepasst werden. In der .htaccess im Document Root des Accounts muss folgendes ergänzt/eingetragen werden:

RewriteEngine on
RewriteRule   ^(.*)  http://localhost:8080/$1 [P]

In der der Tomcat server.xml (tomcat/conf/server.xml) muss der vorgefertigte "Connector" um folgende Zeilen erweitert werden:

URIEncoding="UTF-8"
proxyPort="80"

Vollständig sollte der Block dann vom Schema so aussehen:

<Connector port="8080" protocol="HTTP/1.1"
              connectionTimeout="20000"
              URIEncoding="UTF-8"
              proxyPort="80"
              redirectPort="8080" />

Wichtig: Bitte sichern Sie Ihre Installation entsprechend ab (beispielsweise via Passwort), andernfalls können Ihre Daten durch Dritte abgegriffen werden.

Quelle

https://tomcat.apache.org
https://tomcat.apache.org/download-90.cgi


Composer

Composer ist ein anwendungsorientierter Paketmanager für die Programmiersprache PHP. Composer wird über die Kommandozeile ausgeführt und installiert Abhängigkeiten eines PHP-Programmes.

Hierfür wird das hos-dev Paket benötigt. Dies können Sie via Supportanfrage über die konsoleH anfragen.

Installation (Managed Server)

software install composer

Installation (Webhosting mit SSH-Support)

php -d allow_url_fopen=On -r "readfile('https://getcomposer.org/installer');" > composer-setup.php
php -d allow_url_fopen=On composer-setup.php
php -r "unlink('composer-setup.php');"
echo alias composer=\"/usr/bin/php -d allow_url_fopen=On /usr/home/$USER/composer.phar\" >> ~/.bashrc
source ~/.bashrc

Verwendung

composer install [PACKET]
composer uninstall [PACKET]

Weitere Kommandos:

composer list

Quelle

https://getcomposer.org/
https://getcomposer.org/download/


Elasticsearch

Elasticsearch ist eine Suchmaschine welche in Java geschrieben ist. Das Programm speichert Dokumente in einem NoSQL-Format.

Um Elasticsearch installieren zu können werden weitere Compiler benötigt, des weiteren benötigen Sie vor der Installation die Prozessfreigabe für Elasticsearch. Bitte fragen Sie via Supportanfrage nach dem Paket "hos-dev" und der Prozessfreigabe.

Installation

software install elasticsearch

Elasticsearch im Hintergrund starten und von der Shell lösen

nohup elasticsearch &

Elasticsearch testen

curl 'localhost:9200/_cat/indices?v'

Wenn Elasticsearch erfolgreich läuft, müsste es folgende Ausgabe ergeben:

health status index pri rep docs.count docs.deleted store.size pri.store.size

Was einfach gesagt bedeutet, dass wir noch keine Indizes im Cluster haben.

@reboot Cronjob

Damit der Daemon nach einem Neustart des Server nicht manuell gestartet werden muss, kann man einen Cronjob einstellen. Wechseln Sie hierzu in die KonsoleH und wählen die entsprechende Account-Domain aus. Wechseln Sie anschließend in das Menü "Einstellungen; Cronjob Manager; Erweiterte Ansicht". Fügen Sie folgende Zeile am Ende ein und kicken Sie anschließend auf "Speichern":

@reboot export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:/bin/java::") && /usr/home/<USERNAME>/.linuxbrew/bin/elasticsearch

Der Pfad muss gegebenenfalls an Ihren angepasst werden.

Zusätzliche Konfiguration (optional)

Wenn Elasticsearch von außen erreicht werden soll, muss die .htaccess angepasst werden. In der .htaccess im Document Root des Accounts muss folgendes ergänzt/eingetragen werden:

RewriteEngine on
RewriteRule   ^(.*)  http://localhost:9200/$1 [P]

Wichtig: Bitte sichern Sie Ihre Installation entsprechend ab (beispielsweise via Passwort), andernfalls können Ihre Daten durch Dritte abgegriffen werden.

Quelle

https://www.elastic.co
https://www.elastic.co/guide/en/elasticsearch/reference/


FFmpeg

FFmpeg besteht aus einer Reihe von freien Computerprogrammen und Programmbibliotheken, die digitales Video- und Audiomaterial aufnehmen, konvertieren, senden und in verschiedene Containerformate verpacken können.

Installation (Managed Server)

software install ffmpeg

Installation (Webhosting mit SSH-Support)

wget https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
tar xJf ffmpeg-release-amd64-static.tar.xz
mv $(ls | grep ffmpeg-[1-9]*) ffmpeg

Installation (Webhosting ohne SSH-Support)

Starten Sie den Download der statischen Builds von ffmpeg-release-amd64-static.tar.xz (64-bit Linux) auf Ihrem lokalen Computer. Die heruntergeladene Datei muss vor dem Upload entpackt werden. Zum Entpacken der .tar.xz-Datei empfehlen wir das Programm 7-Zip. Laden Sie mit WebFTP (KonsoleH) oder einem FTP-Programm (z.B. FileZilla) benötigte Binaries (z.B. ffmpeg) auf den Server. Die Berechtigungen der hochgehenden Dateien müssen noch auf "755" angepasst werden - z.B. mit Filezilla oder WebFTP. Die hochgeladenen Skripten können nun in Ihre Programmierung eingebunden werden.

FFmpeg verwenden

Beispiel für Befehlsaufrufe:

ffmpeg -i MeinLied.mp3 MeinLied.wav
ffmpeg -i MeinVideo.avi MeinVideo.mp4

Quelle

https://www.johnvansickle.com/ffmpeg/


GlassFish

GlassFish ist die Referenzimplementierung von Java EE.

Installation

software install glassfish

GlassFish starten

asadmin start-domain

GlassFish testen

asadmin deploy config.war

Sie können ebenfalls im Browser "<ihre-domain.tdl>:8080" aufrufen und erhalten ebenfalls eine Rückmeldung, wenn der Prozess läuft.

Administrator Webinterface

Das Administrator Webinterface ist optional. Aus Sicherheitsgründen ist dies deaktiviert und muss bei Bedarf zuerst aktiviert werden. Dazu muss erst ein Passwort (und ein Benutzer) angelegt werden:

./asadmin change-admin-password

Der Standardbenutzer ist "admin" und es ist kein Passwort vergeben. Nachdem mit dem letzten Befehl ein Passwort vergeben wurde, kann das Webinterface freigegeben werden:

./asadmin enable-secure-admin

Sie werden nach dem eben angelegten Benutzer und dem Passwort gefragt, dass Sie eingeben müssen. Anschließend kann das Administrator Webinterface genutzt werden.

@reboot Cronjob

Damit der Daemon nach einem Neustart des Server nicht manuell gestartet werden muss, kann man einen Cronjob einstellen. Wechseln Sie hierzu in die KonsoleH und wählen die entsprechende Account-Domain aus. Wechseln Sie anschließend in das Menü "Einstellungen; Cronjob Manager; Erweiterte Ansicht". Fügen Sie folgende Zeile am Ende ein und kicken Sie anschließend auf "Speichern":

@reboot /usr/home/<USERNAME>/.linuxbrew/bin/asadmin deploy config.war

Der Pfad muss gegebenenfalls an Ihren angepasst werden.

Quellen

https://glassfish.java.net/


MongoDB

MongoDB ist eine dokumentenorientierte Datenbank. Da die Datenbank dokumentenorientiert ist, kann sie Sammlungen von JSON-ähnlichen Dokumenten verwalten.

Um MongoDB installieren zu können werden weitere Compiler benötigt. Bitte fragen Sie via Supportanfrage nach dem Paket "hos-dev".

Installation

software install mongodb

Start MongoDB

Sie können MongoDB als Daemon (der im Hintergrund ausgeführt wird) mit dem folgenden Befehl starten. Sie können den Parameter "--port" weglassen, wenn die Datenbank nur lokal verwendet wird.

mongod --dbpath /usr/home/<USERNAME>/mongodb/data/db/ --port 27017 --fork --logpath /usr/home/<USERNAME>/mongodb/log.txt --nounixsocket

(Der Befehl muss aus einer Zeile bestehen.)

Alternativ:

mongod --dbpath /usr/home/<USERNAME>/mongodb/data/db/ --nounixsocket

MongoDB testen

mongo

Kann dies erfolgreich gestartet werden, war auch die Installation erfolgreich. Sie haben nun eine Shell ähnlich wie auch bei Datenbanksystemen wie MySQL verfügbar. Mit dem Befehl "exit" können Sie diese wieder verlassen.

@reboot Crontab

Um MongoDB bei einem Neustart des Servers automatisch auszuführen, kann der @reboot cronjob beispielsweise mit folgendem Befehl erzeugt werden:

crontab -l | { cat; echo "@reboot $HOME/.linuxbrew/bin/mongod --dbpath $HOME/mongodb/data/db/ --port 27017 --fork --logpath $HOME/mongodb/log.txt --nounixsocket &"; } | crontab -

Quelle

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-linux/
https://docs.mongodb.com/manual/mongo/
https://www.mongodb.com/mongodb-security-best-practices
https://github.com/mongodb/mongo/blob/master/rpm/mongod.conf (Konfigurationsbeispiel)


NGINX

Nginx ist eine Webserver-Software aber ebenso ein Reverse Proxy und E-Mail-Proxy.

Um nginx installieren zu können werden weitere Compiler benötigt. Bitte fragen Sie via Supportanfrage nach dem Paket "hos-dev".

Installation

software install nginx

Diese Anleitung beschreibt die Vorgehensweise über einen SSH-Zugang und setzt voraus, dass Sie bereits mit Ihren Zugangsdaten via SSH verbunden sind.

Verwendung

nginx starten

nginx

Überprüfen der Funktionalität durch Aufrufen der Domain mit dem gewählten Port (Beispiel: example.de:8080)

@reboot Cronjob

Damit der Daemon nach einem Neustart des Server nicht manuell gestartet werden muss, kann man einen Cronjob einstellen. Wechseln Sie hierzu in die KonsoleH und wählen die entsprechende Account-Domain aus. Wechseln Sie anschließend in das Menü "Einstellungen; Cronjob Manager; Erweiterte Ansicht". Fügen Sie folgende Zeile am Ende ein und kicken Sie anschließend auf "Speichern":

@reboot /usr/home/<USERNAME>/.linuxbrew/bin/nginx

Der Pfad muss gegebenenfalls an Ihren angepasst werden.

Zusätzliche Konfiguration (optional)

Wenn nginx von außen erreicht werden soll, muss die .htaccess angepasst werden. In der .htaccess im Document Root des Accounts muss folgendes ergänzt/eingetragen werden:

RewriteEngine on
RewriteRule   ^(.*)  http://localhost:<port>/$1 [P]

node.js

Node.js ist eine serverseitige Plattform in der Softwareentwicklung zum Betrieb von Netzwerkanwendungen. Insbesondere lassen sich Webserver damit realisieren.

Installation

software install node

node.js verwenden

Node kann man zum Beispiel einfach auf ein bestimmtes Script anwenden:

node "IhrScript.js"

@reboot Cronjob

Damit der Daemon nach einem Neustart des Server nicht manuell gestartet werden muss, kann man einen Cronjob einstellen. Wechseln Sie hierzu in die KonsoleH und wählen die entsprechende Account-Domain aus. Wechseln Sie anschließend in das Menü "Einstellungen; Cronjob Manager; Erweiterte Ansicht". Fügen Sie folgende Zeile am Ende ein und kicken Sie anschließend auf "Speichern":

@reboot /usr/home/<USERNAME>/.linuxbrew/bin/node IhrScript.js

Der Pfad muss gegebenenfalls an Ihren angepasst werden.

Zusätzliche Konfiguration (optional)

Wenn Ihr Node Webserver von außen erreicht werden soll, muss die .htaccess angepasst werden. In der .htaccess im Document Root des Accounts muss folgendes ergänzt/eingetragen werden:

RewriteEngine on
RewriteRule   ^(.*)  http://localhost:<port>/$1 [P]

Wichtig: Bitte sichern Sie Ihre Installation entsprechend ab (beispielsweise via Passwort), andernfalls können Ihre Daten durch Dritte abgegriffen werden.

Quelle

https://nodejs.org/


PEAR

Ein eigenes PEAR ist manchmal notwendig, wenn Sie z.B. eigene PEAR-Pakete bequem installieren möchten, oder eine PHP-Version einsetzen, die das serverweite PEAR nicht unterstützt.

Installation

wget https://pear.php.net/go-pear.phar
php go-pear.phar

Folgende Angaben sind bei der Installation zu ändern (LOGIN = FTP-Login des Accounts):

2. Temporary directory for processing            : /usr/home/LOGIN/.tmp
3. Temporary directory for downloads             : /usr/home/LOGIN/.tmp

Nach der Bearbeitung der Pfade mit "Enter" bestätigen. Bei der Nachfrage, ob die php.ini geändert werden soll, wählen Sie [n] aus.

Anpassen der PATH-Variable, um das lokale PEAR zu verwenden

echo 'export PATH="~/pear/bin:$PATH"' >> ~/.bashrc
echo 'export PHP_PEAR_PHP_BIN="/usr/bin/php"' >> ~/.bashrc
source ~/.bashrc

(Anmerkung: /usr/bin/php zeigt immer auf die neueste am Server verfügbare PHP-Version. Wenn Sie eine spezielle PHP-Version verwenden wollen, passen Sie den Pfad an. z.B. PHP 5.5 => /usr/bin/php55 )

PEAR verwenden

 pear

Pakete auflisten

pear list-all

Neue Pakete installieren

pear install <paket>

Das eigene PEAR in PHP-Skripten verwenden

Ergänzen der .htaccess-Datei:

php_value include_path /usr/home/LOGIN/pear/share/pear/:.:/usr/local/lib/php/

Redis

Redis ist eine In-Memory-Datenbank. Redis kann zum Beispiel als Alternative zu "memcached" verwendet werden.

Redis-Datenbanken verwalten Sie auf auf Managed Servern einfach über die konsoleH: https://docs.hetzner.com/de/konsoleh/account-management/configuration/redis/


Resilio Sync (BTSync)

Installation

software install rslsync

Resilio Sync / BTSync starten

Setzen Sie in folgenden Befehl die IP-Adresse des Managed Servers und führen Sie diesen aus.

rslsync --webui.listen <server_ip>:8888

Wenn auch die Portfreigabe gesetzt wurde, können Sie nun über http://<"SERVER-IP">:8888/gui die Verwaltungsoberfläche öffnen. Mit folgendem Befehl erhalten Sie Hilfe zu allen Funktionen von BTSync:

rslsync --help

In der Regel ist es notwendig eine Konfigurationsdatei anzulegen und einen Ordner in dem die Daten liegen.

@reboot Cronjob

Damit der Daemon nach einem Neustart des Server nicht manuell gestartet werden muss, kann man einen Cronjob einstellen. Wechseln Sie hierzu in die KonsoleH und wählen die entsprechende Account-Domain aus. Wechseln Sie anschließend in das Menü "Einstellungen; Cronjob Manager; Erweiterte Ansicht". Fügen Sie folgende Zeile am Ende ein und kicken Sie anschließend auf "Speichern":

@reboot /usr/home/<USERNAME>/rslsync --webui.listen <server_ip>:8888

Der Pfad muss gegebenenfalls an Ihren angepasst werden.

Quellen

https://getsync.com/
https://wiki.archlinux.org/index.php/BitTorrent_Sync#Configuration
https://wiki.ubuntuusers.de/Archiv/BitTorrent_Sync/#Manuell


Ruby

Voraussetzungen

  • [OPTIONAL] Anhebung des Speicherlimits für "gem" auf 500 MB für Rails (Ruby On Rails) - Bitte fragen Sie diese Änderung der Prozessüberwachung über eine Supportanfrage über die Verwaltungsoberfläche KonsoleH an.
  • [OPTIONAL] Für Ruby über FCGI wird das Debian-Paket "libfcgi-dev" benötigt. Bitte fragen Sie diese Änderung der Prozessüberwachung über eine Supportanfrage über die Verwaltungsoberfläche KonsoleH an.
  • [OPTIONAL] Für weitere Installationen wird eventuell das hos-dev Paket benötigt. Sie können dies via Supportanfrage anfragen.

Verwendung der Paketverwaltung RubyGems (oder kurz Gems)

Das Installieren zusätzlicher Gems für Ruby ist NICHT global möglich. Allerdings können Sie die Installation in einer "lokalen" Umgebung durchführen. Hierfür sind keine root-Rechte notwendig. Die Paketverwaltung "gem" muss dazu folgendermaßen genutzt werden:

gem install --user-install <gem-name>

Ruby über FCGI

Um Ruby über FCGI zu verwenden, sollte das Gem "fcgi" installiert sein.

gem install --user-install fcgi

Des Weiteren wird ein FCGI-Handler und ein Eintrag in der .htaccess-Datei benötigt. Es empfiehlt sich die eigene Ruby-Anwendung in ein Unterverzeichnis von "public_html" zu legen und diese als Startverzeichnis zu definieren.

FCGI-Handler: Der FCGI-Handler muss in einem dem Apache zugänglichen Verzeichnis liegen (z.B. public_html). Daher sollte die eigentliche Anwendung in einem Unterverzeichnis liegen. In der Datei "ruby_handler.fcgi", die Sie anlegen müssen, steht dann folgendes:

#!/bin/dash
export GEM_HOME="$HOME/.gem/ruby/2.3.0/"
export GEM_PATH="$GEM_HOME:/var/lib/ruby/gems/1.8"
exec /usr/bin/ruby /usr/www/users/<FTP-Benutzer>/<Projekt-Ordner>/index.rb

Über die beiden "exports" wird das Verzeichnis angegeben, welches Ruby bei der Suche nach gems durchsuchen soll. Hier ist es das Standardverzeichnis für mit "--user-install" installierte Gems, sodass Sie eigene Gems hinzufügen können. In der "exec"-Zeile muss ein auszuführendes Skript definiert werden.

.htaccess-Datei ergänzen:

FcgidWrapper /usr/www/users/<FTP-Benutzer>/ruby_handler.fcgi .rb
  SetHandler fcgid-script

In diesem Beispiel wird davon ausgegangen, dass der Ruby-handler direkt im "public_html" des Benutzers liegt.

Quellen

https://rubygems.org/
https://guides.rubygems.org/faqs/#i-installed-gems-with---user-install-and-their-commands-are-not-available
https://www.binarytides.com/quick-tip-installing-ruby-gems-in-the-users-home-directory/


SabreDAV (WebDAV)

Um Dateien auf einem Webhosting oder Managed Server via WebDAV verwalten zu können kann SabreDAV installiert werden.

Installation

SabreDAV wird über composer installiert. Zuerst muss also composer installiert werden.

composer require sabre/dav

SabreDAV einrichten

Um auf den Server via WebDAV zugreifen zu können wird eine Schnittstelle benötigt. Die offizielle Anleitung ist unter https://sabre.io/dav/gettingstarted/ zu finden.

mkdir /usr/home/<USERNAME>/sabredata
mkdir /usr/www/users/<USERNAME>/sabredav

Kopieren Sie die Datei server.php von https://sabre.io/dav/gettingstarted/ nach /usr/www/users/<USERNAME>/sabredav/server.php.
Nötige Anpassungen:
require 'vendor/autoload.php'; -> require '/usr/home/<USERNAME>/vendor/autoload.php';
rootDirectory: hier wird der freigegebene Ordner konfiguriert (z.B. /usr/home/<USERNAME>)
setBaseUri: der Pfad zum SabreDAV Server, in diesem Beispiel /sabredav/server.php
lockBackend: der Pfad zum Lockfile, in diesem Beispiel /usr/home/<USERNAME>/sabredata/locks

SabreDAV testen

SabreDAV ist standardmäßig ohne Passwort via HTTP erreichbar: http://example.com/sabredav/server.php

Wichtig: Bitte sichern Sie Ihre Installation entsprechend ab (beispielsweise via Passwort), andernfalls können Ihre Daten durch Dritte abgegriffen werden.
https://sabre.io/dav/authentication/


Der Pfad muss gegebenenfalls an Ihren angepasst werden.

Hinweis

Als Key-Value-Datenbank (NoSQL), die die Daten über den Arbeitsspeicher bereithält, kann diese als gute Alternative zu "memcached" verwendet werden.

https://redis.io
https://github.com/nrk/predis (Redis Client)
https://wordpress.org/plugins/redis-cache/ (Wordpress Plugin - Redis Object Cache)


Subversion-Server (SVN)

Diese Anleitung beschreibt die Vorgehensweise über einen SSH-Zugang und setzt voraus, dass Sie bereits mit Ihren Zugangsdaten via SSH verbunden sind.

SVN ist bereits installiert und muss daher nur eingerichtet und verwendet werden. Sollten Sie SVN also nur als Client verwenden, müssen Sie nichts weiter tun. Der SVN-Server kann mit mehreren Benutzern betrieben werden, allerdings nicht mit mehreren SSH-Benutzern.

Vorbereitung

Für eine saubere Datenverwaltung sollte zunächst ein Hauptordner für die Repositories angelegt werden. Dieser Ordner sollte sich aus Sicherheitsgründen außerhalb des Verzeichnisses "public_html" befinden. Hauptordner im Home-Verzeichnis anlegen:

mkdir ~/subversion

Repository erstellen

Es empfiehlt sich für jedes Projekt ein neues Repository zu erstellen.

mkdir ~/subversion/testprojekt
svnadmin create ~/subversion/testprojekt

(optional) Nutzer anlegen:

Öffnen Sie dazu die Konfigurationsdatei mit einem Editor Ihrer Wahl:

nano ~/subversion/testprojekt/conf/svnserve.conf

Schreiben Sie folgendes in diese Datei:

anon-access = none
auth-access = write
password-db = passwd

Nun muss noch der User definiert werden. Dieser muss dem SSH User (FTP-Hauptbenutzer) entsprechen, ebenso das Passwort. Öffnen Sie dazu die Passwortdatei mit einem Editor Ihrer Wahl:

nano ~/subversion/testprojekt/conf/passwd

Fügen Sie nach folgendem Schema Ihren Benutzernamen und das Passwort ein:

<"USERNAME"> = <"PASSWORT">

Subversion als Daemon starten

svnserve -d

@reboot Cronjob

Damit der Daemon nach einem Neustart des Server nicht manuell gestartet werden muss, kann man einen Cronjob einstellen. Wechseln Sie hierzu in die KonsoleH und wählen die entsprechende Account-Domain aus. Wechseln Sie anschließend in das Menü "Einstellungen; Cronjob Manager; Erweiterte Ansicht". Fügen Sie folgende Zeile am Ende ein und kicken Sie anschließend auf "Speichern":

@reboot /usr/bin/svnserve -d

Der Pfad muss gegebenenfalls an Ihren angepasst werden.

SVN verwenden

Nun kann SVN wie gewohnt über SSH genutzt werden.

svn co svn+ssh://sshhosteintrag/usr/home/<"FTP-USERNAME">/subversion/testprojekt

Quellen

https://civicactions.com/blog/how-to-set-up-an-svn-repository-in-7-simple-steps/
https://subversion.apache.org/


Varnish

Varnish ist ein Cache für dynamische Webseiten mit viel Inhalt. Im Gegensatz zu anderen Reverse-Proxys, die häufig aus clientseitigen Proxys oder aus Servern entstanden, wurde Varnish von Grund auf als Reverse-Proxy konzipiert.

Um Varnish installieren zu können werden weitere Compiler benötigt. Bitte fragen Sie via Supportanfrage nach dem Paket "hos-dev".

Installation

software install varnish

Varnish testen

varnishd -V
varnishd -a localhost:6081 -T localhost:6082 -b localhost:8080

@reboot Cronjob

Damit der Daemon nach einem Neustart des Server nicht manuell gestartet werden muss, kann man einen Cronjob einstellen. Wechseln Sie hierzu in die KonsoleH und wählen die entsprechende Account-Domain aus. Wechseln Sie anschließend in das Menü "Einstellungen; Cronjob Manager; Erweiterte Ansicht". Fügen Sie folgende Zeile am Ende ein und kicken Sie anschließend auf "Speichern":

@reboot /usr/home/<USERNAME>/.linuxbrew/sbin/varnishd -a localhost:6081 -T localhost:6082 -b localhost:8080

Der Pfad muss gegebenenfalls an Ihren angepasst werden.

Zusätzliche Konfiguration (optional)

Wenn Varnish von außen erreicht werden soll, muss die .htaccess angepasst werden. In der .htaccess im Document Root des Accounts muss folgendes ergänzt/eingetragen werden:

RewriteEngine on
RewriteRule   ^(.*)  http://localhost:6081/$1 [P]

Wichtig: Bitte sichern Sie Ihre Installation entsprechend ab (beispielsweise via Passwort), andernfalls können Ihre Daten durch Dritte abgegriffen werden.


wkhtmltopdf

Installation ohne SSH-Zugang

Laden Sie das passende Paket (Debian 11 (bullseye) amd64) von der Webseite des Herstellers auf Ihren PC.
Entpacken Sie die Datei mit einem Tool Ihrer Wahl (z.B. 7-Zip)
Innerhalb des Archivs, beziehungsweise im entpackten Ordner, finden Sie das benötigte Programm im Pfad wkhtmltox/bin/.
Laden Sie diese Datei (wkhtmltopdf) per FTP auf den Server.
Machen Sie die Datei ausführbar, indem Sie dieser die Berechtigung "755" geben. Die Berechtigung der Datei können Sie über das FTP-Programm, dass Sie verwendet haben, oder über die WebFTP-Oberfläche in der KonsoleH ändern.
Nun können Sie das Tool unter Angabe des Pfades direkt nutzen.

Installation mit SSH-Zugang auf einem Webhostingpaket

Bitte tauschen Sie den Download link mit dem der aktuellen Version aus.

wget https://downloads.wkhtmltopdf.org/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
tar xJvf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz

Installation mit SSH-Zugang auf einem Managed Server

software install wkhtmltopdf

Quellen

https://wkhtmltopdf.org


wp-cli

WP-CLI ist ein Kommandozeilen-Werkzeug für WordPress. Sie können Plugins aktualisieren, Multisite-Installationen konfigurieren und vieles mehr, ohne einen Browser zu benutzen

Installation (Managed Server)

software install wp-cli

Installation (Webhosting mit SSH-Support)

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
chmod +x wp-cli.phar
echo alias wp-cli=\"/usr/bin/php -d allow_url_fopen=On /usr/home/$USER/wp-cli.phar\" >> ~/.bashrc
source ~/.bashrc

Quelle

https://wp-cli.org/


Table of Contents