System Setup

Web Server

Content Security Policy

In case a Content Security Policy is set on the Kitodo.Presentation instance, make sure that blob: URLs are allowed as img-src. Otherwise, the page view may remain blank.

TYPO3 Setup

Extension Configuration

You should check the extension configuration!

  • go to the Extension Configuration (ADMIN TOOLS -> Settings -> Extension Configuration).

  • open dlf

  • check and save the configuration

Tenant Configuration

You must create a data folder for some Kitodo.Presentation configuration records like metadata, structures, solrCore and formats (namespaces). This can be achieved easily with the 'New Tenant' backend module on the left side in section 'Tools'.

Make sure, all fields are green. Then all necessary records are created.

TYPO3 Configuration

Disable caching in certain situations

Avoid empty Workview

You may notice from time to time, the viewer page stays empty even though you pass the tx_dlf[id] parameter.

This happens, if someone called the viewer page without any parameters or with parameters without a valid cHash. In this case, TYPO3 saves the page to its cache. If you call the viewer page again with any parameter and without a cHash, the cached page is delivered.

With the search plugin or the searchInDocument tool this may disable the search functionality.

To avoid this, you must configure tx_dlf[id] to require a cHash. Of course this is impossible to achieve so the system will process the page uncached.

Add this setting to your typo3conf/LocalConfiguration.php:

'FE' => [
    'cacheHash' => [
        'requireCacheHashPresenceParameters' => [
            'tx_dlf[id]',
        ],
    ],
]

Tip: Use the admin backend module: Settings -> Configure Installation-Wide Options

TypoScript Basic Configuration

Please include the Template "Basic Configuration (dlf)". This template adds jQuery to your page by setting the following typoscript:

page.includeJSlibs.jQuery

Slug Configuration

With TYPO3 9.5 it is possible to make speaking urls with the builtin advanced routing feature ("Slug"). This may be used for extensions too.

TYPO3 documentation about Advanced Routing Configuration.

The following code is an example of an routeEnhancer for the workview page on uid=14.

 1routeEnhancers:
 2  KitodoWorkview:
 3    type: Plugin
 4    namespace: tx_dlf
 5    limitToPages:
 6      - 14
 7    routePath: '/{id}/{page}'
 8    requirements:
 9      id: '(\d+)|(http.*xml)'
10      page: \d+
11  KitodoWorkviewDouble:
12    type: Plugin
13    namespace: tx_dlf
14    limitToPages:
15      - 14
16    routePath: '/{id}/{page}/{double}'
17    requirements:
18      id: '(\d+)|(http.*xml)'
19      page: \d+
20      double: '[0-1]'

Solr Installation

This extension doesn't include Solr, but just a prepared configuration set. To setup Apache Solr, perform the following steps:

  1. Make sure you have Apache Solr 8.11 and running.

    Download Solr from https://solr.apache.org/downloads.html. Other versions may work but are not tested.

  2. Copy the config set to your solr home

cp -r dlf/Configuration/ApacheSolr/configsets/dlf to $SOLR_HOME/configsets/
  1. Get the Solr OCR Highlighting plugin and put it into contrib-directory.

    The plugin is available on GitHub (https://github.com/dbmdz/solr-ocrhighlighting/releases). The documentation can be found here: https://dbmdz.github.io/solr-ocrhighlighting/.

    The Solr OCR Highlighting plugin is required for full text search as of Kitodo.Presentation 3.3.

cp solr-ocrhighlighting-0.7.1.jar to contrib/ocrsearch/lib/
  1. Using basic authentication is optional but recommended.

    The documentation is available here: https://solr.apache.org/guide/8_8/basic-authentication-plugin.html