Startup-Konfiguration

Einführung

Es gibt einige Konfigurationen, die nicht über die Benutzeroberfläche geändert werden können. Wir beginnen mit guten Standardwerten, aber insbesondere wenn du ein Druckerhersteller bist oder wenn du gerne hackst, wie Repetier-Server einige Dinge handhabt, kannst du diese immer noch ändern.

Am wichtigsten ist die Anfangskonfiguration, die festlegt, wo alle Dateien gespeichert werden, auf welcher IP und welchem Port wir lauschen oder ob das Interface gebrandet werden soll, wo nach Aktualisierungen gesucht werden soll und so weiter. Diese Konfiguration kann in drei parallelen Dateien existieren. Die letzte Datei, in der eine Einstellung geändert wird, gewinnt. Aus diesem Grund solltest du nur Einstellungen hinzufügen, die du auch ändern willst! Die erste Datei, die gelesen wird, ist unsere Standarddatei RepetierServer.xml im Installationspfad. Verändere diese nicht – jedes Update wird sie mit der neuesten Version überschreiben. Als Hersteller schlagen wir vor, den gleichen Pfad wie unsere Konfiguration zu verwenden, nur mit -extra im Namen, also standardmäßig RepetierServer-extra.xml. Für den Fall, dass Benutzer etwas ändern möchten, solltest du die Datei STORAGE_DIR/database/RepetierServer.xml verwenden. Diese wird auch mit Repetier-Server Monitor gesichert.

RepetierServer.xml

Standorte

Wie in der Einleitung beschrieben, gibt es bis zu 3 Konfigurationsdateien. 2 davon befinden sich im Installationsverzeichnis oder du kannst Repetier-Server mit der Option -c (/c für Windows) für die Hauptkonfigurationsdatei aufrufen. Die zweite Datei wird mit dem gleichen Namen gelesen, nur mit dem Zusatz „-extra“ im Dateinamen. Auch wenn die Konfigurationsdatei manuell erstellt wurde, ist die dritte Datei immer RepetierServer.xml im Datenbankordner. Im Folgenden verwenden wir den Standardnamen, um Positionen anzuzeigen.

Windows

  • INSTALL_DIR steht standardmäßig unter C:\Program Files (x86)\Repetier-Server
  • STORAGE_DIR steht standardmäßig unter C:\ProgramData\Repetier-Server
  • Unsere Standardkonfiguration: INSTALL_DIR/bin/RepetierServer.xml
  • Herstellerkonfiguration: INSTALL_DIR/bin/RepetierServer-extra.xml
  • Benutzerkonfiguration: STORAGE_DIR/database/RepetierServer.xml

Linux

  • INSTALL_DIR steht standardmäßig unter/usr/local/Repetier-Server
  • STORAGE_DIR steht standardmäßig unter /var/lib/Reepetier-Server
  • Unsere Standardkonfiguration INSTALL_DIR/etc/RepetierServer.xml
  • Herstellerkonfiguration: INSTALL_DIR/etc/RepetierServer-extra.xml
  • Benutzerkonfiguration: STORAGE_DIR/database/RepetierServer.xml

Mac

  • INSTALL_DIR steht standardmäßig unter /usr/local/Repetier-Serve
  • STORAGE_DIR steht standardmäßig unter /Library/Application Support/Repetier-Server
  • Unsere Standardkonfiguration: INSTALL_DIR/etc/RepetierServer.xml
  • Herstellerkonfiguration: INSTALL_DIR/etc/RepetierServer-extra.xml
  • Benutzerkonfiguration: STORAGE_DIR/database/RepetierServer.xml

Grundlegende Struktur

Der minimale leere Inhalt sieht wie folgt aus:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<server>
  <!-- Dein Inhalt hier -->
</server>

Standorte ändern

Die folgenden Einstellungen ändern, wo einige Dateien gespeichert werden. Ich zeige zuerst alle Pfadoptionen und erkläre sie der Reihe nach.

<installation-directory>/usr/local/Repetier-Server</installation-directory>
<storage-directory>/var/lib/Repetier-Server/</storage-directory>


Das installation-directory ist das Stammverzeichnis unserer Installation, in dem wir unsere Version aller Dateien aufbewahren. Wenn du mehrere Repetier-Server-Instanzen laufen habst, können diese alle auf dasselbe Verzeichnis verweisen.

Im storage-directory wird alles gespeichert, was der Benutzer speichert. Um den aktuellen Zustand zu erhalten, ist dies der einzige Ordner, den du sichern musst.

Netzwerk ändern

Die folgenden Einstellungen ändern das Netzwerkverhalten:

<port>3344</port>
<disableIPV6>false</disableIPV6>
<allow-iframe-embedding>false</allow-iframe-embedding>
<update-info-url>http://download.repetier-server.com/files/server/debian-armhf/updateinfo.txt</update-info-url>
<!--If you want to add your own SSL certificates, please enter here the directory where your certificate is stored. Note: only certificates with the extension .pem will be considered-->
<custom-ssl-certificate-store></custom-ssl-certificate-store>
<unixSocket></unixSocket>

Port ermöglicht es dir, den Port zu ändern, auf den Repetier-Server antwortet. Ändere ihn, wenn eine andere Software ihn bereits verwendet oder wenn du mehrere gleichzeitige Installationen benötigst.

Wenn du möchtest, kannst du die Verwendung von ipv6 mit disableIPV6 deaktivieren.

Das Einbetten von Repetier-Server in einen iframe kann es der übergeordneten HTML-Datei ermöglichen, Clickjacking-Angriffe durchzuführen. Daher ist dies standardmäßig nicht möglich und führt zu einer Fehlermeldung im Browser. Wenn du deine eigene HTML-Datei für die Einbettung schreibst, kannst du die Einbettung erlauben.

Von Zeit zu Zeit fragt Repetier-Server unseren Server ab, ob neue Updates verfügbar sind. Wenn du ein Hersteller mit einer kundenspezifischen Installation bist, solltest du einen eigenen Updater verwenden. Ändere stattdessen die URL zu deinem Webserver, damit du kontrollieren kannst, welcher Updater verwendet wird und wann ein Update angeboten wird. Unter Eigener Updater für Repetier-Server findest du weitere Informationen dazu.

Repetier-Server hat eine eigene Root-Zertifikatsliste und vertraut nur Dateien, die ab einer dieser Routen signiert sind. Wenn du selbst signierte Zertifikate habst oder ein Zertifikat fehlt, kannst du mit custom-ssl-certificate-store einen Ordner definieren, in dem du öffentliche pem-Dateien für Zertifikate, denen vertraut werden soll, speicherst.

Das letzte Feld ist unixSocket, das in diesem Beispiel leer ist. Du kannst hier einen Pfad für eine Socket-Datei angeben, die Repetier-Server erstellen soll, um eine direkte Kommunikation mit der API zu ermöglichen. Auf Unix Sockets API findest du Informationen über die Kommunikation via Socket. Der große Vorteil neben der Geschwindigkeit ist, dass kein Passwort oder API-Schlüssel benötigt wird, so dass du als Hersteller dies für eigene Skripte nutzen kannst, um Informationen auszutauschen.

Branding

<branding>
    <shadow-www-directory>/usr/local/MyCompany/www</shadow-www-directory>
    <branded-name>MyCompany Server</branded-name>
</branding>

Als Hersteller möchtest du die Installation vielleicht mit deinem eigenen Namen versehen (branded-name).

Das shadow-www directory-allows ermöglicht es dir, eigene Dateien hinzuzufügen und vorhandene Dateien durch deine Version zu ersetzen. Wenn du eine URL vom Server anforderst, wird in der Regel zuerst im Schattenverzeichnis nach der Datei gesucht, und nur wenn diese nicht vorhanden ist, wird die Standardversion verwendet. Beachte jedoch, dass das Ersetzen vorhandener Dateien zu Problemen führen kann, wenn du ein Update installierst. Wenn wir eine Javascript-Datei für eine neue Funktion ändern und deine Version geladen wird, in der sie fehlen, kann dies zu Laufzeitfehlern führen. Das Gleiche gilt für CSS- und HTML-Dateien, die möglicherweise neue Funktionen erhalten und, wenn sie fehlen, zu einem hässlichen Layout oder zu nicht zugänglichen neuen Funktionen führen können. Die einzigen recht sicheren Typen sind Bilder und Textdateien. Wenn du andere Typen hinzufügst, solltest du einen eigenen Updater verwenden, damit bei Aktualisierungen auch deine Dateien ersetzt werden.

Eine beliebte Wahl für eine ersetzte Datei ist img/logo-60.png, um das Symbol der Benutzeroberfläche und natürlich die Favicon-Dateien zu ändern.

Andere Einstellungen

<default-language>en</default-language>
<logging>true</logging>
<backlog-size>1000</backlog-size>

Die Standardsprache wird an einigen Stellen für interne Nachrichten verwendet, wenn nicht bekannt ist, welche Sprache der Empfänger verwendet. Die meisten internen Nachrichten sind jedoch immer in Englisch.

Die Protokollierung sollte aktiviert sein, damit du im Falle von Fehlern besser sehen kannst, was vor sich geht. Dieser ist für die seerver.log-Erstellung zuständig.

Die Backlog-Größe ist nur eine Sicherheitsmarge – wenn mehr als x Zeilen nicht in die Log-Datei geschrieben werden, werden neue Nachrichten verworfen.

extcommands.xml

In STORAGE_PATH/database/extcommands.xml kannst du externe Befehle definieren, die Repetier-Server ausführen darf. Standardmäßig wird Repetier-Server unbekannte Dateien aus Sicherheitsgründen nicht ausführen. Aus dem gleichen Grund ist diese Liste auch nicht über die Schnittstelle änderbar.

Es gibt eigentlich 2 Listen von Dateien. Die erste Liste ist für zusätzliche Menüeinträge im globalen Menü oder Druckermenü. Die zweite Liste ist für den @execute-Befehl, der vom G-Code aus ausgeführt werden soll.

Weitere Einzelheiten zu dieser Datei findest du im Benutzerhandbuch, Kapitel Advanced Configuration.