{"id":4845,"date":"2016-09-10T14:56:03","date_gmt":"2016-09-10T12:56:03","guid":{"rendered":"https:\/\/www.bdjl.de\/localhost\/?p=4845"},"modified":"2016-09-27T17:15:42","modified_gmt":"2016-09-27T15:15:42","slug":"docsearch","status":"publish","type":"post","link":"https:\/\/www.bdjl.de\/localhost\/?p=4845","title":{"rendered":"DocSearch"},"content":{"rendered":"<p>Zum Thema <a href=\"https:\/\/kvfg.net\/blogs\/beehive\/?p=7694\" target=\"_blank\">Dokumentenindexierung in DokuWiki<\/a> habe ich heute f\u00fcr meine Schule gebastelt. Hier der technischere Teil der Dokumentation dazu.<\/p>\n<p>Nach der Installation des Plugins <a href=\"https:\/\/www.dokuwiki.org\/plugin:docsearch\" target=\"_blank\">DocSearch<\/a> in DokuWiki den Konverter <a href=\"http:\/\/tika.apache.org\/\" target=\"_blank\">Apache Tika<\/a> als JAR Datei nach \/opt\/tika legen. Den Ordner \/opt\/tika an www-data rekursiv und mit den Rechten 750 \u00fcbergeben. Evtl. openjdk JRE nachinstallieren. Die headless Version reicht aus.<\/p>\n<p>Kontrollieren, ob PHP genug RAM erh\u00e4lt. Das memory_limit in \/etc\/php5\/apache2\/php.ini sollte \u00fcber 256MB liegen.<\/p>\n<p>Die \/pfad\/zu\/dokuwiki\/lib\/plugins\/docsearch\/conf\/converter.php.dist nach converter.php kopieren und anpassen. Meine sieht nun so aus:<\/p>\n<pre class=\"lang:default decode:true\">#&lt;?php die() ?&gt;\r\n# PHP include hack\r\n\r\n#\r\n# Use this file to setup the document to text converter.\r\n#\r\n# The plugin trys to convert every media document to a text file. On this\r\n# progress it uses a given set of external tools to convert it.\r\n# This tools are defined per file extension.\r\n#\r\n# The config stores one extension and it's tool per line.\r\n# You can use %in% and %out% for the input and output file.\r\n#\r\npdf     \/usr\/bin\/java -jar \/opt\/tika\/tika-app-1.13.jar -t -eUTF-8 -r %in% &gt; %out%\r\ndoc     \/usr\/bin\/java -jar \/opt\/tika\/tika-app-1.13.jar -t -eUTF-8 -r %in% &gt; %out%\r\nodt     \/usr\/bin\/java -jar \/opt\/tika\/tika-app-1.13.jar -t -eUTF-8 -r %in% &gt; %out%\r\ndocx    \/usr\/bin\/java -jar \/opt\/tika\/tika-app-1.13.jar -t -eUTF-8 -r %in% &gt; %out%\r\nppt     \/usr\/bin\/java -jar \/opt\/tika\/tika-app-1.13.jar -t -eUTF-8 -r %in% &gt; %out%\r\nodp     \/usr\/bin\/java -jar \/opt\/tika\/tika-app-1.13.jar -t -eUTF-8 -r %in% &gt; %out%\r\npptx    \/usr\/bin\/java -jar \/opt\/tika\/tika-app-1.13.jar -t -eUTF-8 -r %in% &gt; %out%\r\nrtf     \/usr\/bin\/java -jar \/opt\/tika\/tika-app-1.13.jar -t -eUTF-8 -r %in% &gt; %out%\r\nxls     \/usr\/bin\/java -jar \/opt\/tika\/tika-app-1.13.jar -t -eUTF-8 -r %in% &gt; %out%\r\nods     \/usr\/bin\/java -jar \/opt\/tika\/tika-app-1.13.jar -t -eUTF-8 -r %in% &gt; %out%\r\nxlsx    \/usr\/bin\/java -jar \/opt\/tika\/tika-app-1.13.jar -t -eUTF-8 -r %in% &gt; %out%\r\n<\/pre>\n<p>Dann einen Testlauf starten und die Fehler einsammeln:<\/p>\n<pre class=\"lang:default decode:true \">sudo -u www-data php \/var\/www\/dokuwiki\/lib\/plugins\/docsearch\/cron.php<\/pre>\n<p>Evtl. sollte das Paket ttf-mscorefonts-installer nachinstalliert werden, um weniger Fontmeldungen um die Ohren gehauen zu bekommen. Ein<\/p>\n<pre class=\"lang:default decode:true \">touch \/var\/www\/.pdfbox.cache\r\nchown www-data.www-data \/var\/www\/.pdfbox.cache\r\nchmod 750 \/var\/www\/.pdfbox.cache<\/pre>\n<p>behebt noch ein paar Kleinigkeiten in der Fehlerausgabe.<\/p>\n<p>Der Lauf frisst Zeit und Ressourcen. Der cronjob sollte dies ber\u00fccksichtigen. Mein Eintrag in die \/etc\/crontab sieht so aus<\/p>\n<pre class=\"lang:default decode:true \">23 1     * * *  www-data \/usr\/bin\/php \/var\/www\/dokuwiki\/lib\/plugins\/docsearch\/cron.php &gt; \/var\/log\/tika.log\r\n<\/pre>\n<p>l\u00e4uft also nur einmal in der Nacht los.<\/p>\n<p>Was nicht in den Griff zu bekommen sein wird, sind die vielf\u00e4ltigen Windows-only-Fonts, die in vielen Dokumenten verbaut sind. Da wird Tika auch in Zukunft maulen m\u00fcssen. Das hei\u00dft konkret: <em>www-data<\/em> erh\u00e4lt E-Mails! Es empfiehlt sich deswegen einen Alias f\u00fcr www-data anzulegen und die Mails auf das eigene Konto zu lenken, will man nicht vom Mailserver mit Fehlern zu unzustellbaren E-Mails zugem\u00fcllt werden. Oder man lenkt die Ausgabe des Cronjobs nach <em>\/dev\/null<\/em> um, erf\u00e4hrt dann aber auch nix \u00fcber reparable Fehler.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Zum Thema Dokumentenindexierung in DokuWiki habe ich heute f\u00fcr meine Schule gebastelt. Hier der technischere Teil der Dokumentation dazu. Nach der Installation des Plugins DocSearch in DokuWiki den Konverter Apache Tika als JAR Datei nach \/opt\/tika legen. Den Ordner \/opt\/tika an www-data rekursiv und mit den Rechten 750 \u00fcbergeben. Evtl. openjdk JRE nachinstallieren. Die headless [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15,5,10],"tags":[557,467,344,556],"class_list":["post-4845","post","type-post","status-publish","format-standard","hentry","category-dokuwiki","category-linux","category-schule","tag-docsearch","tag-dokuwiki-2","tag-suche","tag-tika"],"_links":{"self":[{"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=\/wp\/v2\/posts\/4845","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4845"}],"version-history":[{"count":10,"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=\/wp\/v2\/posts\/4845\/revisions"}],"predecessor-version":[{"id":4856,"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=\/wp\/v2\/posts\/4845\/revisions\/4856"}],"wp:attachment":[{"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4845"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4845"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4845"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}