Présentation
Fess peut afficher des vignettes dans les résultats de recherche. Les vignettes sont générées en fonction du type MIME des résultats de recherche. Pour les types MIME pris en charge, les vignettes sont générées lors de l’affichage des résultats de recherche. Le traitement de génération de vignettes peut être configuré et ajouté pour chaque type MIME.
Pour afficher les vignettes, connectez-vous en tant qu’administrateur et activez l’affichage des vignettes dans les paramètres généraux, puis enregistrez.
Formats de fichiers pris en charge
Fichiers image
| Format | Type MIME | Description |
|---|---|---|
| JPEG | image/jpeg | Photos, etc. |
| PNG | image/png | Images transparentes, etc. |
| GIF | image/gif | Y compris les GIF animés |
| BMP | image/bmp, image/x-windows-bmp, image/x-ms-bmp | Images bitmap |
| TIFF | image/tiff | Images haute qualité |
| SVG | image/svg+xml | Images vectorielles |
| Photoshop | image/vnd.adobe.photoshop, image/photoshop, application/x-photoshop, application/photoshop | Fichiers PSD |
Fichiers document
| Format | Type MIME | Description |
|---|---|---|
application/pdf | Documents PDF | |
| Word | application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document | Documents Word |
| Excel | application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet | Feuilles de calcul Excel |
| PowerPoint | application/vnd.ms-powerpoint, application/vnd.openxmlformats-officedocument.presentationml.presentation | Présentations PowerPoint |
| RTF | application/rtf | Texte enrichi |
| PostScript | application/postscript | Fichiers PostScript |
Contenu HTML
| Format | Type MIME | Description |
|---|---|---|
| HTML | text/html | Génère des vignettes à partir des images intégrées dans les pages HTML |
Outils externes requis
La génération de vignettes nécessite les outils externes suivants. Installez-les en fonction des formats de fichiers que vous devez prendre en charge.
Outils de base (requis)
| Outil | Utilisation | Linux (apt) | Mac (Homebrew) |
|---|---|---|---|
| ImageMagick | Conversion et redimensionnement d’images | apt install imagemagick | brew install imagemagick |
Note
ImageMagick 6 (commande convert) et ImageMagick 7 (commande magick) sont tous deux pris en charge.
Support SVG
| Outil | Utilisation | Linux (apt) | Mac (Homebrew) |
|---|---|---|---|
| rsvg-convert | Conversion SVG vers PNG | apt install librsvg2-bin | brew install librsvg |
Support PDF
| Outil | Utilisation | Linux (apt) | Mac (Homebrew) |
|---|---|---|---|
| pdftoppm | Conversion PDF vers PNG | apt install poppler-utils | brew install poppler |
Support MS Office
| Outil | Utilisation | Linux (apt) | Mac (Homebrew) |
|---|---|---|---|
| unoconv | Conversion Office vers PDF | apt install unoconv | brew install unoconv |
| pdftoppm | Conversion PDF vers PNG | apt install poppler-utils | brew install poppler |
Pour les systèmes d’exploitation de type Redhat, installez les paquets suivants :
$ sudo yum install unoconv libreoffice-headless vlgothic-fonts ImageMagick poppler-utils
Support PostScript
| Outil | Utilisation | Linux (apt) | Mac (Homebrew) |
|---|---|---|---|
| ps2pdf | Conversion PS vers PDF | apt install ghostscript | brew install ghostscript |
| pdftoppm | Conversion PDF vers PNG | apt install poppler-utils | brew install poppler |
Vignettes des fichiers HTML
Les vignettes HTML utilisent les images spécifiées ou contenues dans le HTML. Les vignettes sont recherchées dans l’ordre suivant et affichées si elles sont spécifiées :
Valeur de l’attribut content d’une balise meta avec l’attribut name défini sur « thumbnail »
Valeur de l’attribut content d’une balise meta avec l’attribut property défini sur « og:image »
Image de taille appropriée pour une vignette dans une balise img
Configuration
Fichier de configuration
Le générateur de vignettes est configuré dans fess_thumbnail.xml.
src/main/resources/fess_thumbnail.xml
Principales options de configuration (fess_config.properties)
Les options suivantes peuvent être configurées dans app/WEB-INF/classes/fess_config.properties ou /etc/fess/fess_config.properties.
# Largeur minimale pour les vignettes (pixels)
thumbnail.html.image.min.width=100
# Hauteur minimale pour les vignettes (pixels)
thumbnail.html.image.min.height=100
# Rapport d'aspect maximum (largeur:hauteur ou hauteur:largeur)
thumbnail.html.image.max.aspect.ratio=3.0
# Largeur des vignettes générées
thumbnail.html.image.thumbnail.width=100
# Hauteur des vignettes générées
thumbnail.html.image.thumbnail.height=100
# Format de sortie
thumbnail.html.image.format=png
# XPath pour extraire les images du HTML
thumbnail.html.image.xpath=//IMG
# Extensions exclues
thumbnail.html.image.exclude.extensions=svg,html,css,js
# Intervalle de génération des vignettes (millisecondes)
thumbnail.generator.interval=0
# Délai d'expiration de l'exécution de commande (millisecondes)
thumbnail.command.timeout=30000
# Délai de destruction du processus (millisecondes)
thumbnail.command.destroy.timeout=5000
Script generate-thumbnail
Présentation
generate-thumbnail est un script shell qui effectue la génération réelle des vignettes. Lors de l’installation via le paquet RPM/Deb, il est installé dans /usr/share/fess/bin/generate-thumbnail.
Utilisation
generate-thumbnail <type> <url> <output_file> [mimetype]
Arguments
| Argument | Description | Exemple |
|---|---|---|
type | Type de fichier | image, svg, pdf, msoffice, ps |
url | URL du fichier d’entrée | file:/path/to/file.jpg |
output_file | Chemin du fichier de sortie | /var/lib/fess/thumbnails/_0/_1/abc.png |
mimetype | Type MIME (optionnel) | image/gif |
Types pris en charge
| Type | Description | Outils utilisés |
|---|---|---|
image | Fichiers image | ImageMagick (convert/magick) |
svg | Fichiers SVG | rsvg-convert |
pdf | Fichiers PDF | pdftoppm + ImageMagick |
msoffice | Fichiers MS Office | unoconv + pdftoppm + ImageMagick |
ps | Fichiers PostScript | ps2pdf + pdftoppm + ImageMagick |
Exemples
# Générer une vignette pour un fichier image
./generate-thumbnail image file:/path/to/image.jpg /tmp/thumbnail.png image/jpeg
# Générer une vignette pour un fichier SVG
./generate-thumbnail svg file:/path/to/image.svg /tmp/thumbnail.png
# Générer une vignette pour un fichier PDF
./generate-thumbnail pdf file:/path/to/document.pdf /tmp/thumbnail.png
# Fichier GIF (spécifier le type MIME pour activer l'indication de format)
./generate-thumbnail image file:/path/to/image.gif /tmp/thumbnail.png image/gif
Emplacement de stockage des vignettes
Chemin par défaut
${FESS_VAR_PATH}/thumbnails/
ou
/var/lib/fess/thumbnails/
Structure des répertoires
Les vignettes sont stockées dans une structure de répertoires basée sur le hachage.
thumbnails/
├── _0/
│ ├── _1/
│ │ ├── _2/
│ │ │ └── _3/
│ │ │ └── abcdef123456.png
│ │ └── ...
│ └── ...
└── ...
Désactivation du travail de vignettes
Pour désactiver le travail de vignettes, configurez ce qui suit :
Dans l’interface d’administration, allez dans Système > Général, décochez « Affichage des vignettes », et cliquez sur le bouton « Mettre à jour ».
Définissez
thumbnail.crawler.enabledsurfalsedansapp/WEB-INF/classes/fess_config.propertiesou/etc/fess/fess_config.properties.
thumbnail.crawler.enabled=false
Redémarrez le service Fess.
Dépannage
Les vignettes ne sont pas générées
Vérifier les outils externes
# Vérifier ImageMagick
which convert || which magick
# Vérifier rsvg-convert (pour SVG)
which rsvg-convert
# Vérifier pdftoppm (pour PDF)
which pdftoppm
Vérifier les logs
${FESS_LOG_PATH}/fess-thumbnail.log
Exécuter le script manuellement
/usr/share/fess/bin/generate-thumbnail image file:/path/to/test.jpg /tmp/test_thumbnail.png image/jpeg
Erreurs avec les fichiers GIF/TIFF
Lors de l’utilisation d’ImageMagick 6, spécifiez le type MIME pour activer les indications de format. Cela se fait automatiquement si Fess est correctement configuré.
Exemple d’erreur:
convert-im6.q16: corrupt image `/tmp/thumbnail_xxx' @ error/gif.c/DecodeImage/512
Solutions :
Mettre à niveau vers ImageMagick 7
Ou vérifier que le type MIME est correctement transmis
Les vignettes SVG ne sont pas générées
Vérifier si
rsvg-convertest installé
which rsvg-convert
Tester la conversion manuellement
rsvg-convert -w 100 -h 100 --keep-aspect-ratio input.svg -o output.png
Erreurs de permission
Vérifiez les permissions du répertoire de stockage des vignettes.
ls -la /var/lib/fess/thumbnails/
Corrigez les permissions si nécessaire.
chown -R fess:fess /var/lib/fess/thumbnails/
chmod -R 755 /var/lib/fess/thumbnails/
Support des plateformes
| Plateforme | Statut de support | Remarques |
|---|---|---|
| Linux | Entièrement pris en charge | - |
| macOS | Entièrement pris en charge | Installer les outils externes via Homebrew |
| Windows | Non pris en charge | En raison de la dépendance au script bash |