Manuel:thumb handler.php
Fichier MediaWiki : thumb_handler.php | |
---|---|
Emplacement : | / |
Code source : | master • 1.42.1 • 1.41.2 • 1.39.8 |
Classes : | Accès au code • Accès à la documentation |
Description
thumb_handler.php est un script utilisé pour redimensionner automatiquement les images d'un gestionnaire 404 . Par exemple, quand un navigateur demande une vignette qui n'a pas été créée précédemment.
Pour l'utiliser, suivez les étapes ci-dessous, puis initialisez $wgGenerateThumbnailOnParse
à false
.
Si vous avez défini $wgLocalFileRepo
dans LocalSettings.php
, alors vous devez également initialiser :
$wgLocalFileRepo['transformVia404'] = true;
Configuration du serveur
La configuration ci-dessous suppose que vous n'avez pas de dépôt de fichiers personnalisés (au moins $wgLocalFileRepo ) configurés manuellement. Dans ce cas, vous devrez ajuster le chemin de réécriture des règles selon
$wgLocalFileRepo['hashLevels']
et $wgLocalFileRepo['deletedHashLevels']
.Apache
Créez une règle de réécriture pour appeler thumb_handler.php lorsqu'un fichier de $wgUploadPath /thumb/
n'existe pas. Si votre wiki est dans le répertoire /w, quelque chose de similaire à cela devrait fonctionner pour Apache : :
si $wgHashedUploadDirectory vaut true
:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/?w/images/thumb/[0-9a-f]/[0-9a-f][0-9a-f]/[^/]+/[^/]+$ /w/thumb_handler.php [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/?w/images/thumb/archive/[0-9a-f]/[0-9a-f][0-9a-f]/[^/]+/[^/]+$ /w/thumb_handler.php [L,QSA]
si $wgHashedUploadDirectory vaut false
:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/?w/images/thumb/[^/]+/[^/]+$ /w/thumb_handler.php [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/?w/images/thumb/archive/[^/]+/[^/]+$ /w/thumb_handler.php [L,QSA]
nginx
location /w/images {
# séparez l'emplacement de images/ de sorte à ce que l'exécution .php ne se fasse pas
location ~ ^/w/images/thumb/(archive/)?[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/[^/]*([0-9]+)px-.*$ {
# Gestionnaire de vignettes pour MediaWiki
# Cet emplacement ne correspond qu'à une URL qui pointe vers une vignette
# si le fichier n'existe pas utilisez @thumb pour exécuter le script thumb.php
try_files $uri $uri/ @thumb;
}
}
# gestionnaire de vignettes 404, appelé uniquement par try_files quand une vignette n'existe pas
location @thumb {
# Faites un rewrite ici pour que thumb.php reçoive les arguments corrects
rewrite ^/w/images/thumb/([0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/[^/]*([0-9]+)px-.*)$ /w/thumb_handler.php/$1;
rewrite ^/w/images/thumb/(archive/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/[^/]*([0-9]+)px-.*)$ /w/thumb_handler.php/$1;
}