Hier werden die zur Konfiguration des Servers benötigten Parameter beschrieben.
Eine detaillierte Beschreibung der Installation unter verschiedenen Betriebssystemen und der Verzeichnisstruktur auf dem PicApport Server befindet sich im PicApport Installationshandbuch.
Schnelleinstieg Installation von PiccApport
Starten von piccapport.exe (Windows)
Die .exe Datei kann in ein beliebiges Verzeichnis der Festplatte kopiert werden. (Eine Java Laufzeitumgebung ab Version 8 wird empfohlen)
Installieren und Starten picapport.jar
Die .jar Datei kann in ein beliebiges Verzeichnis der Festplatte kopiert werden. (Eine Java Laufzeitumgebung ab Version 8 wird empfohlen)
Beispiel CMD-Datei für Oracle Jre auf Windows mit Speicherkonfiguration
java -Xms512m -Xmx1024m -jar picapport.jar
Beispiel Linux Script Debian Headless
- -DTRACE=INFO ist optional (Werte: ERROR, INFO, WARNING, DEBUG)
- -Duser.home ist optional und kann verwendet werden um das Datenbankverzeichnis umzusetzen.
java -Xms512m -Xmx1024m -DTRACE=INFO -Duser.home=/opt/picapport -cp picapport.jar de.contecon.picapport.PicApport -configfile=/opt/picapport/.picapport/picapport.properties -pgui.enabled=false
Seit Version 5.0 geht auch:
java -Xms512m -Xmx1024m -Duser.home=/opt/picapport -jar picapport-headless.jar
Server Konfiguration
Die Konfiguration erfolgt optional über eine Java .properties Datei die wie folgt versucht wird zu öffnen:
- wenn Programmparameter -configfile gesetzt ist dann wird versucht diese Datei zu laden. (Diese Datei muss dann aber existieren.)
- im Verzeichnis user.home/.picapport/picapport.properties
- danach im im Verzeichnis user.dir//picapport.properties (aktuelles Verzeichnis)
- danach wird ohne .properties Datei mit den unten beschriebenen Defaults gestartet.
- weitere Informationen zum Java .properties-Dateiformat (Escaping von Backslash etc.) gibt es hier: https://de.wikipedia.org/wiki/Java-Properties-Datei
Alle in picapport.properties gesetzten Parameter können mittels der Kommandozeile überschrieben werden.
Die Groß / Kleinschreibung der Namen ist zu beachten
Java-System properties
Name | Default | Verison | Imple | Beschreibung |
---|---|---|---|---|
picapport | .picapport | 3.2 | JA | Name picapport directory |
user.home | java system | 1.0 | JA | Pfad zum Userverzeichnis abhängig vom Betriebssystem |
picapport .home | not set | 3.2.2 | JA | Überschreibt user.home aber nur wenn dort nicht bereits ein .picapport Verzeichnis existiert. (Wird vom Windows Installer verwendet) |
Allgemeine Regeln zum Java .properties Dateiformat
- Das Dateiencoding einer .properties Datei ist ISO-8859-1
- Werte werden normalerweise in einer Zeile gesetzt:
- propertyName=propertyWert
- propertyName=propertyWert
- propertyName = propertyWert
- Leerzeichen am Zeilenanfang werden ignoriert.
- Wichtig: Das Backslash Zeichen muss mit einen doppelten Backslash Zeichen geschrieben werden. Zum Beispiel: Dateipfad=c:\\MeineFotos\\2017
- Zeilen die mit dem Kommentarzeichen ! oder # anfangen werden ignoriert. Leerzeilen werden ebenfalls ignoriert.
- Der Property-Wert wird durch das Zeilenende begrenzt. Leerzeichen zwischen dem Property-Wert und dem Zeilenenden werden nicht ignoriert.
- Die Sonderzeichen "newline", "carriage return", und "tab" werden mit folgenden Zeichen eingefügt: \n, \r and \t.
- UNICODE zeichen werden wie in Java-Programmen üblich mit dem \u prefix eingeleitet. Zum Beispiel: \u002c.
Dies ist z.B. für Umlaute notwendig. Eine Unicodetabelle gibt es z.B. hier: https://www.compart.com/de/unicode
Parameter in picapport.properties
Name | Default | Verison | Imple- | Beschreibung |
---|---|---|---|---|
Allgemeine Serverparameter | ||||
server.port | 80 | 1.0 | JA | IP-Port für Zugriff auf Server: |
server.bind.n | not set | 1.0 |
| IP-Stack auf dem der Server |
server.theme | not set (a) | 1.0 | JA | default JQuery Theme |
server.photobuffer | not set (3) | 1.0 | JA | Number of photos loaded into |
server.autoupdate.photobuffer | not set (100) | 5.2 | JA | Ist als Sortierung "Neuste automatisch aktualisieren" gewählt, |
server.external.address.for.shared.links | not set (default: aktuelle | 6.2 | JA | Ist der PicApport-Server über verschiedene Adressen (z.B lokales WLAN und externe DynDNS-Adresse) erreichbar, Beispiel: server.external.address.for.shared.links=http://onlinedemo.picapport.de:80 |
server.max .concurrent.imageio | not set (3) | 1.3 | JA | Anzahl gleichzeitiger ImageIO Operationen (Bilder in voller größe im Speicher) |
server.max.concurrent.shares.per.session | not set (3) | 6.2 | JA | Anzahl geteilter Links (Shares) die gleichzeitig (Tabs) in einer Browser Session angezeigt werden können. |
server.cookie .timeout.seconds | not set (default = 60*60*24*100 = 100 days) | 5.0 | JA | Gültigkeit der in Cookies gespeicherten Anmeldedaten (Benutzer hat Anmeldung gespeichert) Wird der Wert 0 eingetragen so kann man keine Anmeldedaten speichern. |
gui.enabled | not set (true) | 1.0 | JA | Boolean Parameter um GUI zu |
gui.hideintray | not set (true) | 1.0 | JA | Boolean Parameter um GUI |
thumbs.height | not set (120) | 1.0 | JA | Integer Höhe der Thumbnails. |
thumbs.mode | not set (0) | 5.1 | JA | 0= Thumbs immer aus jpg-thumb generieren wenn möglich(default) |
thumbs.num | not set (250) | 1.0 | JA | Integer Anzahl Thumbnails bevor |
db.max.photos | not set (2000) | 1.0 | JA | Integer Anzahl der Photos die |
robot.* Konfiguration des Robots (Fotoverzeichnisse) | ||||
robot.root.n.path | root.0=$sd | 1.0 |
| Voll qualifizierter Pfad(e) zu einem
|
n | 1.0 |
| Optionale ID für diesen Eintrag | |
robot.root.n .isuploadroot | nicht gesetzt | 5.0 | JA | Kennzeichnet das Verzeichnis als Upload-Verzeichnis. Es kann immer nur ein Verzeichnis das Uploadverzeichnis sein. Ist kein Upload-Verzeichnis explizit gesetzt, ist immer das erste Verzeichnis das Upload-Verzeichnis. Beispiel: robot.root.1.isuploadroot=true |
robot.filter.path.n | nicht gesetzt | 1.3 | JA | Regulärer Ausdruck um Bilder in |
nicht gesetzt | offen |
| Regulärer Ausdruck um Bilder mit | |
robot.rescan.minutes | 5 | 1.0 | JA | Zeit bis zum nächsten Rescan in |
robot.filter.keywords.n | nicht gesetzt | offen |
| Regulärer Ausdruck um Bilder |
robot.filter.person.n | nicht gesetzt | offen |
| Regulärer Ausdruck um Bilder |
robot.filter.title.n | nicht gesetzt | offen |
| Regulärer Ausdruck um Bilder mit |
robot.filter.rating | nicht gesetzt | offen |
| Gültige Werte (1-5): Beispiel 3 |
mail.* Mail-Client Konfiguration | ||||
mail.rescan.minutes | not set (9) | 2.0 | JA | Zeit bis zum nächsten fetchmail |
mail.check.fingerprint | not set (true) | 2.0 | JA | Wenn true dann wird nach dem laden von Fotos über Email geprüft ob das Foto schon in der Datenbank ist. Wenn ja wird das Foto nicht in das Verzeichnis kopiert. |
foto.* Parameter zur Steuerung der JPG-Generierung | ||||
foto.jpg.quality | not set (0.75) | 5.0 | JA | Qualitätseinstellung der JPG Komprimierung |
foto.jpg.scalemethod | not set (AUTOMATIC) | 5.0 | JA | Qualitätseinstellung der Mögliche Werte: AUTOMATIC, |
foto.jpg.usecache | not set (0) | 5.0 | JA | Soll ein Cache, für die generierten
|
foto.jpg.cache.height | not set (1080) | 5.0 | JA | Höhe der vorgenerierten und gecachten Bilder |
foto.jpg.cache.width | not set (1920) | 5.0 | JA | Breite der vorgenerierten und gecachten Bilder |
foto.jpg.cache .freeSpacePercentage | not set (20) | 5.0 | JA | Mindestgröße des Freien Speicherplatzes auf dem Cache-Pfad |
foto.jpg.cache.path | not set (<PicApport-Home> /cache) | 5.0 | JA | Pfad zum Cache Beispiel: /MyPhotoCache |
foto.thumb.quality | not set (0.75) | 5.0 | JA | Qualitätseinstellung der Thumbnails |
user.* Parameter zur Steuerung der CcUser2 Optionen | ||||
user.encryption .iterations | not set (1701) | 5.0 | JA | Anzahl an Hashdurchläufen für die Passwortspeicherung |
user.password.min | not set (1) | 5.0 | JA | Minimale Passwortlänge |
user.password.max | not set (75) | 5.0 | JA | Maximale Passwortlänge |
user.log.access | not set (false) | 5.0 | JA | Wenn true dann werden alle Logon-Vorgänge protokolliert |
plugin.* Parameter zur Steuerung der Plugins | ||||
plugin.shadow.path | not set | 6.2 | Pfad zu den Schattendateien(Shadow-Files) (*.$.jpg Dateien) Optionaler Parameter. Wenn nicht gesetzt werden die Schatten-Dateien im gleichen Ordner wie die Originaldatei abgelegt.
| |
client.* Web-Client Konfiguration | ||||
client.timeout .short.millis | not set (3000) | 3.0 | JA | Wird aktuell von der #home Seite für Statusabfrage benutzt sobald diese angezeigt wird, damit es im Offline-Fall nicht 15 Sekunden dauert bis man wieder was machen kann. |
client.timeout .long.millis | not set (15000) | 3.0 | JA | Timeout für allgemeine Serveranfragen |
client.default .viewtime.millis | not set (7000) | 3.0 | JA | Vorgabewert für Anzeigedauer im Slideshow-Modus |
client.css .thumb.height | not set (110) | 3.0 | JA | CSS-Höhe für Thumbnails (mit 110 passen bei den meisten Phones zwei Thumbs nebeneinander) |
client.folder.sort | nicht gesetzt | 4.0.1 | JA | Optionaler Parameter. Beispiel: |
client.viewer.maxzoom | not set (1000) | 6.2 | JA | Optionaler Parameter. |
client.viewer.snapview | not set (true) | 6.2 | JA | Optionaler Parameter. (true oder false) Steuert Sichtbarkeit der Snapview (kleines Fenster oben links) beim Zoomen. |
client.loadoriginal.with.gesture | not set (true) | 6.2 | JA | Optionaler Parameter. (true oder false) Wenn false, dann kann das Originalfoto nicht mit "pinch zoom" Gesten oder Mousewheel geladen werden. |
upload.* Upload Konfiguration | ||||
upload.tag.prefix | nicht gesetzt (PicApport/) | 5.0 | JA | Viele Fotobetrachter verwenden |
upload.tag | not set ($upload) | 5.0 | JA | Jedes hochgeladene Foto wird mit diesem Tag versehen (gemeinsam mit dem Prefix) Um alle hochgeladenen Fotos abzufragen einfach $upload eingeben |
upload.tag .useridprefix | nicht gesetzt (@) | 5.0 | JA | Jedes hochgeladene Foto wird mit diesem Tag+UserId versehen (gemeinsam mit dem Prefix) Beispiel: UserId=Hans -> Tag=@Hans (PicApport/@Hans mit Prefix) |
upload.max | nicht gesetzt (10) | 5.0 | JA | Maximale Dateigröße für Upload in MB (1000x1000). Gültige Werte: 1 bis Integer.MAX_VALUE |
upload.max | nicht gesetzt (-1) keine Begrenzung | 5.0 | JA | Maximale Requestgröße (Server) für Upload Gültige Werte: (-1) bis Integer.MAX_VALUE |
upload.max .memorysize | nicht gesetzt (102.400) | 5.0 | JA | Maximaler Speicher (Server) für Upload Gültige Werte: 1024 bis Integer.MAX_VALUE |
upload.max .parallel.uploads | nicht gesetzt (3) | 5.0 | JA | Maximale Anzahl gleichzeitiger |
upload.path | nicht gesetzt | 5.0 | JA | Pfad zum für Uploads von Fotos. Dieser Pfad wird automatisch unterhalb des für Uploads konfigurierten Rootverzeichnisses (siehe: robot.root.n.isuploadroot) angelegt. Folgende Variable können verwendet werden (immer Großbuchstaben verwenden):
Wichtig: Keine Verzeichnistrenner |
server.ssl.* SSL Konfiguration | ||||
server.ssl | not set (false) | 2.0 | JA | Wenn true dann wird SSL Protokoll aktiviert (Schlüssel werden generiert) |
server.ssl.keystore | not set | 2.0 | JA | Dateiname Keystore (Default = .picapport/picapport.ks) |
server.ssl.password | not set | 2.0 | JA | Kennwort für Keystore |
server.ssl.keypassword | not set | 2.0 | JA | Passwort für Zertifikat |
server.ssl.truststore | not set | 2.0 | JA | Dateiname der Truststore Datei (Default = .picapport/picapport.ks) |
server.ssl.trustpassword | not set | 2.0 | JA | Kennwort für Truststore |
geo.* Kartenmodul Konfiguration | ||||
geo.max.markers | not set (20000) | 6.0 | JA | Maximale Anzahl von Markern auf der Karte Wird die Anzahl überschritten bekommt der Anwender einen Hinweis. Größere Werte sind bei ausreichendem Speicher kein Problem |
geo.cluster.size | not set (120) | 6.0 | JA | Göße der Cluster siehe: http://sintef-9012.github.io/PruneCluster/examples/random.10000-size.html |
geo.marker.margin | not set (20) | 6.0 | JA | Marker Margin siehe: http://sintef-9012.github.io/PruneCluster/examples/random.10000-size.html |
geo.max.zoom | not set (18) | 6.0 | JA | Maximales Zoomlevel des Kartenmoduls |
geo.distance.km.default | not set (50) | 6.0 | JA | Vorgabewert KM für near: Operator |
Programmparameter (Argumente) für piccapport.exe bzw. picapport.jar
Die Konfiguration von PicApport über eine Konfigurationsdatei ist optional. Alle Parameter können auch direkt beim Starten an Piccaport.exe übergeben werden.
Parameter die in picapport.properties definiert wurden, werden durch die Angabe beim Starten von piccaport.exe überschrieben.
Die Groß / Kleinschreibung der Namen ist zu beachten
Name | Anzahl | Default | Beschreibung |
---|---|---|---|
-configfile | 1 | nicht gesetzt | Absoluter Dateiname (mit Pfad) für picapport.properties |
-p[Name] | 1 | nicht gesetzt | Hiermit können beliebige Parameter der Datei picapport.properties gesetzt werden. |