Konfiguration Stammdatenübertragung zum Portal

SchalterStandardwert/BeispielwertBeschreibung
portal.messaging.masterdata-queue-name
Name der ActiveMQ-Queue für Update-Events von myContent zum Portal
(Korrespondierender Schalter in myContent: hup.one.content.portal.masterdatagateway,queue-name) 
portal.navigation.location-resource-path-prefixBsp: "/orte/"Pfadprefix der zur Generierung der Links für Ortsmarken genutzt wird. Darf nicht leer sein. Ort Berlin → "/orte/berlin". Der angebene Wert sollte zu den angelegten Resourcen passen.
portal.navigation.department-resource-path-prefixBsp: "/ressort/"

Pfadprefix, der zur Generierung der Links für Ressorts genutzt wird. Dieser darf nicht leer sein.  Für den angegebenen Wert sollte in der Ressourcenverwaltung ein Pfad mit einem Platzhalter für den Ressortnamen im darauffolgende Pfadsegment eingerichtet sein. Die dort zugeordnete Seite erhält beim Aufruf das Ressort als Selektionskriterium für die enthaltenen Artikel gesetzt, 

portal.navigation.tag-resource-path-prefixBsp: "/stichwort/"Pfadprefix, der zur Generierung der Links für Stichworte genutzt wird. (gleiche Logik wie bei location-resource-path-prefix und department-resource-path-prefix)
portal.navigation.search-query-path-prefixStandard: "/search/"Pfadprefix für die Volltextsuche, welche von der Suchzeilen-Komponente des Rahmentemplates verwendet wird. Für den angegebenen Wert sollte in der Ressourcenverwaltung ein Pfad mit dem Platzhalter {SEARCHQUERY} für die URL-encodierte Suchanfrage darauffolgende Pfadsegment eingerichtet sein. Die dort zugeordnete Seite erhält beim Aufruf die Anfrage als Selektionskriterium für die Volltextsuche nach Artikeln.

tag-names-restrict-to-tag-for-suggestions

gnored-tracking-ip-addresses

Konfiguration Frontend

SchalterStandardwert/BeispielwertBeschreibung
portal.frontend.log-levelinfoLoglevel, Levels analog zu Spring
portal.frontend.overload-protection-enabled

true

true / false

deaktiviert den Überlastungsschutz des Frontends

ohne Angabe des Konfigurationseintrag ist der Überlastungsschutz aktiv

portal.frontend.force-ssr-user-agents

leer

zusätzliche User-Agents für die immer gerendert werden soll

folgende werden hart-gecoded immer gerendert:

  • googlebot
  • bingbot
  • slurp
  • duckduckbot
  • facebot
  • facebook
  • applebot
  • twitterbot

Konfiguration Anzeigen

SchalterStandardwert/BeispielwertBeschreibung
portal.advert.article-button-width300Einheit px; Legt die Breite der Artikelbuttons in der Desktopansicht fest
portal.advert.article-button-spacing13Einheit px; Legt die vertikalen Abstände zwischen den Artikelbuttons in der Desktopansicht fest

Konfiguration Artikel

SchalterStandardwert/BeispielwertBeschreibung
portal.article.cooldowns

<Prio> : <Cooldown in Minuten>

1 : 960
2 : 360
3 : 60

Cooldown-Zeiten für Artikel in Minuten in Abhängigkeit von der Priorität. Die Werte in der Beispielspalte sind die Standardwerte.
portal.article.article-embed-style

full

Einbettung von Artikeln in Artikeln

  • full (Default) - Voll eingebettet, wenn die Artikelreferenz das Flag embedded hat
  • linkOnly - Immer als Link
  • preview - Artikelvorschau
portal.article.search-by-alternate-seo-id

false

Kann kein Artikel per URL bzgl. Seo-Id oder Ressourcenpfad ermittelt werden, so wird zusätzlich das letzte Pfad-Segment der URL als alternative Seo-Id am Artikel (Spalte altseoid) für die Suche verwendet.
Diese Schalter sollte nur dann angeschaltet sein, wenn die alternativen Seo-Ids tatsächlich verwendet werden, weil ein zusätzlicher Select für die Ressourcensuche erforderlich ist, wenn anderweitig nichts gefunden wird,

portal.article.tag-names-no-dateleerListe von Tagnamen für die für einen Artikel die Datumzeile ausgeblendet wird
portal.article.tag-names-trigger-hiddenleer

Liste von Tagnamen für die ein Artikel aus den Übersichtsseiten ausgeblendet wird

portal.article.tag-names-trigger-no-Indexleer

Liste von Tagnamen für die ein Artikel das No-Index-Metatag erhält

portal.article.tag-names-trigger-tickerleerListe von Tagnamen für die ein Artikel als Ticker dargestellt wird
portal.article.tag-names-ignored-for-suggestionsleerListe von Tagnamen die bei der Generierung von Vorschlägen ignoriert werden (z.B. DPAINFOLINE)
Im Frontend sind die betreffenden Stichworte als Tag zum Artikel nicht sichtbar.
portal.article.tag-category-names-ignored-for-suggestionsleeranalog zu portal.article.tag-names-ignored-for-suggestions, nur dass hier die betreffenden Tags anhand ihrer Kategorie festgelegt werden.
portal.article.tag-names-restrict-to-tag-for-suggestionsleerListe von Tagname die bei Vorhandensein im Artikel bei der Generierung von Vorschlägen verursachen, dass die Vorschläge dieses Tag enthalten
portal.article.tag-names-do-not-combine-for-suggestions[].not-assigned-tagleerRegel für den Ausschluss von Aritkelvorschlägen:
Im Attribut not-combine-tag wird der Name des Tags festgelegt, welchen die vorgeschlagenen Artikel nicht enthalten dürfen, wenn dem angezeigten Artikel das Tag not-assigned-tag nicht zugeordnet ist.  
portal.article.tag-names-do-not-combine-for-suggestions[].not-combine-tagleer
portal.article.tag-names-trigger-hide-update-textBsp.: #HIDE-UPDATEListe von Tagnamen, für die ein Artikelaktualisierungsdatum ausgeblendet ist, die aber die Artikelsortierung noch beeinflussen.
portal.article.use-seo-url-as-canonical-urlleerSteuert ob die SEO-Url oder technische Url als kanonische Url genutzt werden soll
portal.article.wall-delayEinheit Sekunde
0.5
Steuert den Zeitpunkt ab dem die Pay/Sponsorwall frühestens angezeigt wird

Konfiguration PageParts

SchalterStandardwert/BeispielwertBeschreibung
portal.page.page-parts


Liste von Pageparts
portal.page.page-parts[0].page-part-keyleer

Definiert einen eindeutigen Schlüssel (Freittext)

portal.page.page-parts[0].page-part

leer

Definiert die generelle Art des PageParts ()
portal.page.page-parts[0].captionleerBezeichnung im Admintool
portal.page.page-parts[0].sub-typesleerList der Subtypen eines Pageparts
portal.page.page-parts[0].sub-types[0].sub-type-keyleerDefiniert einen eindeutigen Schlüssel
portal.page.page-parts[0].sub-types[0].frontend-sub-type-key

leer

Definiert die Komponente die im Frontend zum Rendern genutzt wird
portal.page.page-parts[0].sub-types[0].captionleerBezeichnung im Admintool
portal.page.page-parts[0].sub-types[0].representationleerDarstellungsart im Frontend

Page Part Typen → Frontend Subtypen → Representationen

  • ArticleListPagePart
    • previewTeaserBox
      • Representationen
        • multi
        • single
      • Properties
        • count
    • previewGrid
      • Representationen
        • twoColumn
        • threeColumn
        • fourColumn
      • Properties
        • count
        • count-overwritable
        • enable-paging
        • ad-frequency
        • ad-count-per-slot
    • previewSlider
      • Representationen
        • withPictures
        • withoutPicturesCaption
      • Properties
        • count
        • count-overwritable
        • enable-headline
        • ad-frequency
        • ad-count-per-slot
  • ArticleBoxPagePart
    • articleBox
      • Representationen
        • withPictures
        • withOnePicture
        • withoutPictures
  • AdvertPlacePagePart
    • media
  • HtmlCodePagePart
    • htmlCode
  • HtmlWysiwygPagePart
    • htmlCode
  • SpacingPagePart
    • spacing


PropertyBeschreibung

count

Legt die standardmäßige Anzahl an Artikeln fest

count-overwritable

Legt fest, ob die Anzahl an Artikel im Admin überschrieben werden kann

enable-headline

Aktiviert, ob für den Slider eine Headline angegeben werden kann

ad-frequency

Aller wieviel Artikel kommt ein Werbeblock

ad-count-per-slot

Wieviel Werbung pro Block
Beispiel PagePart
page-part-key: articleSlider
page-part: ArticleListPagePart #entscheidet über den Kontext
caption: ArtikelSlider
sub-types:
  - sub-type-key: withPictures
    frontend-sub-type-key: previewSlider
    caption: withPicturesCaption
    count: 15
    count-overwritable: true
    enable-headline: true
    representation: withPictures
    ad-frequency: 4
  - sub-type-key: withoutPictures
    frontend-sub-type-key: previewSlider
    caption: withoutPicturesCaption
    count: 15
    count-overwritable: true
    enable-headline: true
    representation: withoutPictures
    ad-frequency: 4
    ad-count-per-slot: 1


Konfiguration SSR-Cache

SchalterStandardwert/BeispielwertBeschreibung
portal.servers.ssr-cache.url

leer

interne Url des Caches
portal.ssr-cache.log-levelinfo

Loglevel, Levels analog zu Spring

portal.ssr-cache.landing-page-refresh-url/URL der Startseite
portal.ssr-cache.landing-page-refresh-interval20Aktualisierung der Startseite alle X Sekunden
portal.ssr-cache.refresh-element-count24Anzahl der zusätzlich automatisch aktualisierten Seiten
portal.ssr-cache.refresh-interval-base22Basis Aktualisierungsintervall der zusätzlich automatisch aktualisierten Seiten
portal.ssr-cache.refresh-interval-increase2Vergrößerung des Aktualisierungsintervall in Abhängigkeit der Priorität (Position * X)
portal.ssr-cache.interval-length

60

Zählen der Requests für die Sortierung der "wichtigsten" Seiten erfolgt über Aggreggierung in Zeitscheiben. Kleinere Zeitscheiben → genauer, größere Zeitscheiben → weniger Speicherverbrauch. Einheit ist Sekunde
portal.ssr-cache.count-duration1800Wie lange soll ein Request bei der Zählung berücksichtigt werden
portal.ssr-cache.max-entry-count256F+r kurze Momente können mehr als die vorgebenen 25 Einträge im Cache liegen. Harte Grenze bei der keine Einträge mehr in Cache gelegt werden.

Konfiguration Tracking

siehe Impact IGNORE_TRACKING in Konfiguration Frontend-Detektor


Konfiguration Ext-Insights

SchalterStandardwert/BeispielwertBeschreibung
portal.ext-insights.enabledfalse

Aktiviert/Deaktiviert das Aufzeichnen eines Seitenbesuchs über PSC Ext Insights


portal.ext-insights.application-code

Application Code der in myContent fürs Portal konfiguriert wurde


portal.ext-insights.version


portal.ext-insights.visit-page-event-code
Event Code der in myContent fürs Besuchen einer Seite des Portals konfiguriert wurde

Konfiguration E-Mail-Formulare

SchalterStandardwert/BeispielwertBeschreibung

portal.form.email-service-enabled 

falseErzeugung der der Mail-Jobs für Formulare (darf nur in einer Instanz laufen)

portal.form.form-copy-mail-configuration


(Hinterlegung abweichender Werte für  from, subject und template-name, siehe portal.form.mail-configuration)

portal.form.mail-configuration.from

info@hup.deAbsender-Adresse

portal.form.mail-configuration.subject

Ausgefülltes Formular: {0}String mit Paramtern für E-Mail-Betreff

portal.form.mail-configuration.template-name

html/formPfad zum Thymeleaf-Template (URL, Filesystem, Klassenpfad)

portal.mail.sending-service.enabled 

falseAbarbeitung der Mail-Jobs (kann in mehrere Instanzen laufen)

portal.mail.sending-service.deleteThresholdAge  

Default 30 Tage "P30D"Löschfrist für Mail-Jobs

portal.mail.sending-service.error-mail-addresses

Liste von Mail-AdressenWird pro Job gesendet, wenn diese den Status "fehlergeschlagen" erhält.


Konfiguration Hasso Paywall Integration

SchalterStandardwert/BeispielwertBeschreibung
portal.plugins.hasso-paywall-integration.enabled

false

Aktiviert/Deaktiviert die Hasso Paywall Integration
portal.plugins.hasso-paywall-integration.urlleer

Hasso URL

portal.plugins.hasso-paywall-integration.client-idleerHasso Client Id
portal.plugins.hasso-paywall-integration.client-secretleerHasso Client Secret
portal.plugins.hasso-paywall-integration.permissions-keyallow_epaper_infoKey für die Berechtigungen
portal.plugins.hasso-paywall-integration.permission-keysleerListe von Berechtigungs-Keys für die das Lesen eines Paywall-Artikels möglich ist. Lesen ist erlaubt, wenn der Nutzer mindeste eine (noch nicht abgelaufene) Berechtigung aus dieser Liste besitzt
portal.plugins.hasso-paywall-integration.public-keyleerÖffentlicher Schlüssel  für die Signierung des JWT (Erstellung analog zur Erstellung eines HTTPS Schlüsselpaares) *
portal.plugins.hasso-paywall-integration.private-keyleerPrivater Schlüssel für die Signierung des JWT (Erstellung analog zur Erstellung eines HTTPS Schlüsselpaares) *
portal.plugins.hasso-paywall-integration.expiration-time

24h

Gültigkeitsdauer für das ausgestellte JWT
portal.plugins.hasso-paywall-integration.debug.enabledfalseAktiviert/Deaktiviert Debugmodus, bei der ohne Prüfung über Hasso ein JWT erstellt wird
portal.plugins.hasso-paywall-integration.debug.permissionsleerListe von Rechten die im Debug JWT enthalten sein sollen

* Hilfe zur Erstellung des Key-Paars 

Beispielkonfiguration Hasso Paywall Integration
portal:
  plugins:
    hasso-paywall-integration:
      enabled: true
      url: https://hasso-demo.hup.de
      client-id: portal-localhost
      client-secret: 123456
      permissions-key: allow_epaper_info
      public-key: "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA23zvhLTEdUmksF65wd08GCB11urMQibaIAN5nytotrI8Lz0Zf9VC3i\
      iEH+8VGlbLywJaxomwM0jTqgIMlcT76g2r54eZ7knHpy8e/7WKLC8j8X4jmmw/Nqm5/ZO22Ltj1afS2av5lJ2Ox8tFm3xxaKovFQalxeuBBhuY7\
      nKPwu8vdNBrRTfDJ9JtOJTqXThTEb9HNBEJk4M4ATc522leOqDiFOzqpWyS0AA8umJfJU+7ncBHNboD5Vuuxl5oOx6StNEum9pyIbOqa0muHho+\
      gA6de8pvO1wSbGWfgSyyqF2RPQ+dB8Nvg2kzemUPQP1twqIH+MNdCJe4XJQQrN7l3wIDAQAB"
      private-key: "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDbfO+EtMR1SaSw\
      XrnB3TwYIHXW6sxCJtogA3mfK2i2sjwvPRl/1ULeKIQf7xUaVsvLAlrGibAzSNOq\
      AgyVxPvqDavnh5nuScenLx7/tYosLyPxfiOabD82qbn9k7bYu2PVp9LZq/mUnY7H\
      y0WbfHFoqi8VBqXF64EGG5juco/C7y900GtFN8Mn0m04lOpdOFMRv0c0EQmTgzgB\
      NznbaV46oOIU7OqlbJLQADy6Yl8lT7udwEc1ugPlW67GXmg7HpK00S6b2nIhs6pr\
      Sa4eGj6ADp17ym87XBJsZZ+BLLKoXZE9D50Hw2+DaTN6ZQ9A/W3Cogf4w10Il7hc\
      lBCs3uXfAgMBAAECggEAOI1qUXEaJXZCHsdpaVANidHjSurYkjrcfN8oWSCgLGKk\
      Ky+9ADj8r60Uzf2WHGE8xSPoK7uSUMR09RruDzDgD6BSKKfBu6n67VKw1AX8ggHr\
      au+rUMCPURBOQc3rkNBHmudQ5pDvD6HBBi2T08oull8zHmHGGMbjSaWWs+mErR7l\
      lKVDwr9wrF/Fr5zcyyS7k1tsROByEHhfVG8tYwzo0V6MbsJoW07EZtDl88t0HPGX\
      lBJpAZW5IDsHlpNNLDWVryczGkmbQ1aaxQX2RQWdxNXNJyRqLHOdI0IieRjkU+Fc\
      k0QGAEUwD7ivnzwXQhSLurEakZRll/QvX1vzx4OhYQKBgQDzBC5IFZl4txnvqPSN\
      Cfwv2H8aHqu784ijSX7B/r9as7GzuLd0DMjtGslXId9R+HH6MW9+J5mkt4+BPJ4z\
      Vr4riblBYK4Gp/AKZoxPp39ARhICyOgDx4aRU+sDG/u8c0HB0hujAFI0mIxwkxOe\
      g382Z6fwFif3NuT5MWf3mxGXGQKBgQDnNvM1prsyCOUXesmgD79i3bJPV3wPXLCh\
      j7/1z9V3Okrf7ilJonI6f8yru5owEZTybUk4FzYxLsP2sYS4fheqItzy0Wc4ETgt\
      YWt7ljthCSVqoC7Wxo2HTFa+ynkS4R/OQY5KjqAhtPh8EzJqIK0I4oeFg/XrGtX1\
      qY9xSAZbtwKBgFSj/iKpMzzyORxZ8mM1ORrJAuvsBtB9r/d/X6Ddw3Qp5hi8m1jW\
      Ix1CGSI57/gy2i/UDAsaa88NB/RxUoB7E91CKL32mGZFE7vrn68WnaGbRiamJvk6\
      A0qWueHpWzJ1yk9hiLKrJ/adszx6XXj2P9aJH9rlPKJEAlgwtw9seSHxAoGBAMRT\
      hHAqAwmZQ+2L9WhT9s6cMKvuPQlOSyzkQrsWnst+U9WRBL3hkdzaZ4/q3CG0zCSN\
      Z36ZNwrMCtmOIoQFjVKKB9KmvF5/QJRIBFwMVJ8whPTkzuDP95zK1V1rzyKYxcj9\
      ITVtpcr5P4UbR9OVq1fAAhL82fOn9cWDFKm73qpBAoGBAPEI5deABEsgXP6lyOvl\
      xHVDy4kTEkLf2yZfus4wXeNjjMZlHU+zW6JgsJXkhRfd7PfSai/rSoPJXkYZLHBu\
      klEmyJEOwA5QYiyx5p/WP7bhhjgCzJBK3AwC+FLemhLA/fz51+aSB143yhLDq5BN\
      4VahWCo8ulK7v800ynANtxE4"
      expiration-time: 24h
      debug:
        enabled: false
        permissions: [PUBLIC_ABO]

Konfiguration Redis Session Speicher

SchalterStandardwert/BeispielwertBeschreibung
portal.redis-session-store.enabled

false

Aktiviert/Deaktiviert den Redis Session Speicher (false → ein nicht produktionsfähiger zum entwickeln gedachter Session-Speicher wird genutzt, true → erfordert ein mit deployetes Redis)
portal.redis-session-store.urlleer

Adresse des Redis

Beispielkonfiguration Redis Session Speicher
portal:
  redis-session-store:
     enabled: true
     url: redis://redis:6379

Konfiguration External Asset Server

SchalterStandardwert/BeispielwertBeschreibung
content.asset.server.max-dynamic-size

3000

Steuert die maximale Größe, die per width oder height

Konfiguration Consent Manager

SchalterStandardwert/BeispielwertBeschreibung
portal.consent-manager.type

INTERNAL

Mögliche Werte:
portal.consent-manager.parameters


Ab Version 23 deprecated, wird mit Version 24 entfernt

typabhängige Konfigurationsparameter 

CMP_API:

  • portal.consent-manager.parameters.vendorId
    Id des Consent-Vendors, dessen Zustimmung geprüft wird 
portal.consent-manager.cmp-api.custom-blocking.enabled

false

CMP_API: Flag für Aktivierung der backendseitigen Transformation von HTML Komponenten und Internetreferenzen

portal.consent-manager.cmp-api.custom-blocking.data-delivery-url


CMP_API: Download-URL für Zuordnungsdaten von Domains zu Vendors

portal.consent-manager.cmp-api.custom-blocking.data-delivery-update-interval

PT30M   (= 30 Minuten)

CMP_API: Zeitintervall für Aktualisierung der Zuordnungsdaten von Domains zu Vendors
Format nach ISO-8601: PnDTnHnMn.nS
Wird dieser Parameter leer gesetzt, erfolgt der Download nur einmalig mit dem Start des Backend-Servers (Content-Logik).

portal.consent-manager.cmp-api.internal-vendor-id


CMP_API: Id des Consent-Vendors, dessen Zustimmung geprüft wird, um heraus zu finden, dass die technisch notwendigen (Session / Insights) Cookies gesetzt werden dürfen. (zB: "Technisch notwendige Cookies") - Erst wenn diesem Vendor zugestimmt wurde, schreibt das Portal seine Session-Informationen und auch die #Insights Tracking ID.

Beispiel:

portal:
  consent-manager:
    type: CMP_API
    cmp-api:
      # "Oberpfalz Medien"
     internal-vendor-id: c21267
      custom-blocking:
        enabled: true
        data-delivery-url: "https://cdn.consentmanager.net/delivery/customblocking/49923.js"
        data-delivery-update-interval: PT30M

Konfiguration PushNotification

SchalterStandardwert/BeispielwertBeschreibung
portal.push-notification.scheduler-enabled

false

Aktiviert/Deaktiviert den Scheduler zum Verschicken der PushNotificiations
portal.push-notification.article-threshold-age

PT1H (1 Stunde)

Maximales Alter eines Artikels, damit noch eine Push-Nachricht ausgelöst wird.

Java Duration konformer String für die Angabe eines Zeitraumes

Es werden nur Push Notifications für Artikel versendet, deren Veröffentlichungsdatum nicht mehr "article-threshold-age" in der Vergangenheit liegt

  • Keine Stichwörter