トップページ > サイト作成 > CMS > Movable Type で画像のサムネイルが作られないときの対応法
Movable Type で画像のサムネイルが作られないときの対応法
Movable Type の管理画面で画像をアップロードしたもののサムネイルが作成されない場合の対応方法について紹介する。
このページの目次
1. Movable Type のサムネイルとは
Movable Type のサムネイルとは、管理画面からアップロードした画像を縮小版として自動的に生成したファイルのことである。
管理画面のアセットで確認できる画像類はサムネイルが利用されている。
Movable Type のサムネイルは主に管理画面内で利用され実際にアップロードした画像ファイルとは別物のため、サムネイルが生成されない環境下でもウェブサイトまたはブログの公開と運用に支障が無いことが多いが、サムネイル関連の MT タグを利用する場合はサムネイルが使えない環境では正常に動作しない問題が発生する。
また、サムネイルが作成できない環境下で画像のアップロードを行うとサムネイルの代わりに Movable Type が持つ代替え画像が表示される。
2. Movable Type でサムネイルが作られない原因
Movable Type でサムネイルが作られない原因は 2 点ある。
1 点目はサーバの公開ディレクトリ配下に生成されるサムネイルのディレクトリ(/var/www/html/site/assets_c)が無い、もしくは書き込み権限が無くサムネイルが適切に保存できる状態でない場合である。
もし assets_c が無ければ mkdir コマンドや FTP ソフトで作成し、Web サーバの権限で書き込めるようにパーミッションまたは所有者を設定するとよい。
Movable Type でサムネイルが作られない原因は 2 点ある。
2 点目はサムネイルを生成するモジュール「ImageMagick」がサーバにインストールされていない場合である。
ImageMagick がサーバにインストールされているかは Movable Type の管理画面と同じディレクトリに設置されている mt-check.cgi にブラウザでアクセスすると必要なモジュールがあるか確認することができ、ImageMagick がインストールされていなければ下図のように表示される。
3. サムネイル生成に必要な ImageMagick とは
サムネイル生成に必要な ImageMagick とはサーバ上で画像を作成したり編集するオープンソースのソフトウェアのことである。
GIF や JPEG、PNG といった一般的な画像形式から PDF を扱うこともできる。
ImageMagick を利用する場合はサーバ操作するようにコマンドで実行したり、プログラムから API を呼び出して利用する。
Movable Type の管理画面のようにアップロードした画像の縮小版を生成するためにサイズ変更したり、EC サイトで明細書などを PDF 出力する際に利用される。
4. ImageMagick のインストール方法
Movable Type で ImageMagick が利用できるようにするためには ImageMagic 本体と、Movable Type の動作言語である Perl から利用できるようにする Image::Magic(Image/Magick.pm) が必要になる。
RedHat/CentOS 環境では下記のコマンドでまずは ImageMagick 本体をインストールする。
関連するモジュールやソフトが多くインストールされるのがわかる。
# yum install ImageMagick (略) インストール済み: ImageMagick-6.9.10.86-1.el8.x86_64 LibRaw-0.19.5-2.el8.x86_64 OpenEXR-libs-2.2.0-12.el8.x86_64 adobe-mappings-cmap-20171205-3.el8.noarch adobe-mappings-cmap-deprecated-20171205-3.el8.noarch adobe-mappings-pdf-20180407-1.el8.noarch atk-2.28.1-1.el8.x86_64 cairo-1.15.12-3.el8.x86_64 fftw-libs-double-3.3.5-11.el8.x86_64 fribidi-1.0.4-8.el8.x86_64 gdk-pixbuf2-modules-2.36.12-5.el8.x86_64 google-droid-sans-fonts-20120715-13.el8.noarch graphite2-1.3.10-10.el8.x86_64 graphviz-2.40.1-40.el8.x86_64 gtk-update-icon-cache-3.22.30-6.el8.x86_64 gtk2-2.24.32-5.el8.x86_64 harfbuzz-1.7.5-3.el8.x86_64 hicolor-icon-theme-0.17-2.el8.noarch ilmbase-2.2.0-13.el8.x86_64 jasper-libs-2.0.14-4.el8.x86_64 jbig2dec-libs-0.16-1.el8.x86_64 lcms2-2.9-2.el8.x86_64 libXaw-1.0.13-10.el8.x86_64 libXcomposite-0.4.4-14.el8.x86_64 libXcursor-1.1.15-3.el8.x86_64 libXdamage-1.1.4-14.el8.x86_64 libXfixes-5.0.3-7.el8.x86_64 libXft-2.3.3-1.el8.x86_64 libXi-1.7.10-1.el8.x86_64 libXinerama-1.1.4-1.el8.x86_64 libXmu-1.1.3-1.el8.x86_64 libXrandr-1.5.2-1.el8.x86_64 libXrender-0.9.10-7.el8.x86_64 libXxf86misc-1.0.4-1.el8.x86_64 libXxf86vm-1.1.4-9.el8.x86_64 libdatrie-0.2.9-7.el8.x86_64 libfontenc-1.1.3-8.el8.x86_64 libgs-9.27-1.el8.x86_64 libidn-1.34-5.el8.x86_64 libijs-0.35-5.el8.x86_64 libmcpp-2.7.2-20.el8.x86_64 libpaper-1.1.24-22.el8.x86_64 librsvg2-2.42.7-4.el8.x86_64 libthai-0.1.27-2.el8.x86_64 libwmf-lite-0.2.9-8.el8_0.x86_64 mcpp-2.7.2-20.el8.x86_64 openjpeg2-2.3.1-6.el8.x86_64 pango-1.42.4-6.el8.x86_64 pixman-0.38.4-1.el8.x86_64 urw-base35-bookman-fonts-20170801-10.el8.noarch urw-base35-c059-fonts-20170801-10.el8.noarch urw-base35-d050000l-fonts-20170801-10.el8.noarch urw-base35-fonts-20170801-10.el8.noarch urw-base35-fonts-common-20170801-10.el8.noarch urw-base35-gothic-fonts-20170801-10.el8.noarch urw-base35-nimbus-mono-ps-fonts-20170801-10.el8.noarch urw-base35-nimbus-roman-fonts-20170801-10.el8.noarch urw-base35-nimbus-sans-fonts-20170801-10.el8.noarch urw-base35-p052-fonts-20170801-10.el8.noarch urw-base35-standard-symbols-ps-fonts-20170801-10.el8.noarch urw-base35-z003-fonts-20170801-10.el8.noarch xorg-x11-font-utils-1:7.5-40.el8.x86_64 xorg-x11-fonts-ISO8859-1-100dpi-7.5-19.el8.noarch xorg-x11-server-utils-7.7-27.el8.x86_64 avahi-libs-0.7-20.el8.x86_64 cups-libs-1:2.2.6-38.el8.x86_64 gdk-pixbuf2-2.36.12-5.el8.x86_64 ImageMagick-libs-6.9.10.86-1.el8.x86_64 libraqm-0.7.0-4.el8.x86_64 完了しました!
ここで mt-check.cgi で必要モジュールがインストールされているか確認しても依然、「サーバーに Image::Magickか、Image::Magickの動作に必要な他のモジュールがインストールされていません。」のままとなり、まだ不足があるのがわかる。
必要な Image::Magick がサーバにあるかは下記のコマンドで確認することができる。
# perl -MImage::Magick -e 'print $Image::Magick::VERSION'
次に、Perl から ImageMagic を利用するためのモジュールを下記のコマンドでインストールする。
# yum install ImageMagick-perl (略) インストール済み: ImageMagick-perl-6.9.10.86-1.el8.x86_64
再度、mt-check.cgi で必要モジュールがインストールされているか確認すると ImageMagick の存在を Movable Type が認識しているのがわかる。
尚、Image::Magick は CPAN を利用して下記のコマンドでインストールすることもできるが、インストール途中でエラーになることが多いので利用しているサーバに応じて yum か CPAN でインストールするとよい。
# cpan -i Image::Magick
関連記事
Movable Type でウェブページの最新 3 件を表示する方法
Movable Type
Movable Type でブログ記事を公開するとトップページに自動的に一覧表示するようにテンプレートが用意されているが、ウェブページは別途 MT タグをテンプレートに入れる必要があるためトップページなどに最新のウェブページを数量を指定して一覧で表示する方法を紹介する。
Movable Type でページや記事に SNS の投稿ボタンを設置する方法
Movable Type
ウェブページやブログのアクセス数を増やす手段の 1 つに SNS からの流入が挙げられ、Movable Type で作成したページや記事ごとに URL が自動的に入る SNS の投稿ボタンを設置する方法について紹介する。
Movable Type で SNS への表示に効果がある OGP タグの挿入方法
Movable Type
公開したウェブサイトやブログの内容を一早く見てもらう手段の 1 つに SNS を利用が挙げられるが、効果的に SNS に自サイトの紹介を表示するために Movable Type へ OGP タグを挿入する方法について紹介する。
Movable Type でウェブページの一覧をページ番号で切り替える方法
Movable Type
Movable Type で公開しているウェブページの数量が増えた場合に初期状態では「前へ」と「次へ」しかないが、検索サイトの結果画面のようにページ数でページの一覧画面を切り替えられるようにする方法を紹介する。
Movable Type でウェブページの総数を表示する方法
Movable Type
Movable Type は利用するテンプレートによっては必要な機能をカスタマイズする必要があり、ウェブページの総数表示もその一つのため、MT タグを利用してウェブページの総数を表示する方法を紹介する。