26 Jan,2026 (Mon) 22:33

今回やや回り道したけど、結局deckで画像が表示されなかった原因が何であったかを最初に書いて、そのあと何をどうしたから直ったかコード込み(rocky10,php8.4.17,エディタはvi)でまとめて。
了解です。
最初に原因を一文で断定 → 次に修正内容を時系列+コード付きでまとめます。
(Rocky Linux 10 / PHP 8.4.17 / エディタ vi 前提)
Nextcloud の enabledPreviewProviders が動画系(mp4 等)のみに制限されており、 画像系(JPEG / PNG)の PreviewProvider が無効化されていたことが原因。
そのため
imagick の有無は 直接の原因ではなかった
(ただし最終的に imagick を入れたのは正解)。
bash
`sudo -u apache php occ config:system:get enabledPreviewProviders`
出力:
text
OC\Preview\Movie
OC\Preview\MP4
OC\Preview\AVI
OC\Preview\MKV
OC\Preview\WebM
OC\Preview\MOV
👉 画像系(JPEG / PNG)が存在しない
① config.php を vi で編集
bash
sudo -u apache vi config/config.php
(既存の配列は 追記ではなく置き換え)
php
'enable_previews' => true,'enabledPreviewProviders' => [
// 画像
'OC\Preview\PNG',
'OC\Preview\JPEG',
'OC\Preview\GIF',
'OC\Preview\BMP',
'OC\Preview\XBitmap',
// 動画
'OC\Preview\Movie',
'OC\Preview\MP4',
'OC\Preview\AVI',
'OC\Preview\MKV',
'OC\Preview\WebM',
'OC\Preview\MOV',
// 軽量系
'OC\Preview\TXT',
'OC\Preview\MarkDown',
],
保存して終了:
text
Esc
:wq
Enter
② 既存の壊れたプレビューキャッシュを削除
※ Nextcloud の仕様上 preview:clear は存在しない
bash
`sudo -u apache php occ preview:cleanup`
③ PHP / Apache 再起動
bash
sudo systemctl restart php-fpmsudo systemctl restart httpd
④ 確認
bash
sudo -u apache php occ config:system:get enabledPreviewProviders
ここに以下が含まれていれば OK:
text
OC\Preview\PNG
OC\Preview\JPEG`
⑤ ブラウザで確認
bash
php -m | grep imagickimagick
👉 Nextcloud 的には推奨構成
👉 無駄にはなっていない
記事は右側のリストメニューから探せます。
初めての方は下のおすすめ記事からどうぞ。
MONO 0373のを運営している人と、このサイトについての紹介。
サイト制作の考え方や、記事を書く際の工夫など。