はじめに

いつもながら本業が忙しく、サイト運用に全く手が回らずの日々が続いてしまいましたが、ふと画像掲示板の泉を見ると、また荒らしが目につき始めるぐらいに荒れ始めていたので、眠い目をこすりつつサイトメンテナンスをやることにしました。このあたりが一人で続ける個人サイトの一番つらいところですね。

急なPHPのバージョンアップ

メンテナンス作業中、眠さで頭がバカになっていたのか、管理画面でPHPのバージョン変更を何も考えずにやってしまい、PHPをversion 5.xからVersion 7.3に一気上げてしまい、これまでPHP5.x系に甘えて手抜きをしていた変数宣言あたりが原因となって、dtn.jpサーバ全体にWarningが表示されるようになってしまいました。

慌ててプログラム修正を始めましたが、途中で何度かお問い合わせまでいただいてしまい大変ご迷惑をお掛け致しました。

メンテナンスに合わせて機能追加

Warning潰しもひと段落したので、折角なので何か少しでも機能改良できそうなことはないかと考えまして、思いついてふとやってみたことが画像掲示板の泉でアニメーションgif画像の貼り付けに対応させることでした。

今思えば、PHPのバージョンUPとは全く関係ありませんね。

アニメーションgifのアップロード処理

gifアニメといって、いつの時代の話をしてるんだと笑う方も多いと思いますが、実はこれまでアニメーションGIF画像を画像掲示板の泉にアップロードをしても、gifファイルをアップすること自体はできたのですが、サムネイル生成時にそのアニメーションを残すことができておりませんでした。

GDライブラリでサムネイル生成

画像掲示板の泉で画像をアップロードする際には、一覧ページ用のサムネイル画像を別途生成していましたが、このサムネイル生成時の画像リサイズにPHPのGDライブラリを使っておりました。

このGDgifアニメーションに実は対応しておらず、せっかくアニメーションgifをアップロードしてもらっても、サムネイル画像ではアニメーションが消えた単なる固定gifファイルになってしまう問題がありました。

ImageMagickでサムネイル生成

gifアニメーションのリサイズで、アニメーションも残しつつリサイズする一番簡単な方法は、GDでのリサイズをやめてImageMagickに変えるというだけでした。

ImageMagickに脆弱性の話が多いからかもしれないですが、さくらのレンタルサーバではImageMagickがデフォルトで切られているので、 extension=imagick.sophp.iniに追加する必要はあったりしましたので少々手間取りましたが、無事サムネイル画像でもアニメgifを動かすことができました。

アップ最大容量も10MBに変更しました

おわりに

これと合わせて、これまで画像アップロードの容量を最大1MBとしていたものを、最大10MBにまで上げておきました。iphoneなんかで写真を撮ると、平気で1MBを超えてくるので、これで多少なりとも使える画像掲示板になったのかとは思います。

画像アップローダーとしてでもお気軽にご利用ください。

PHPが学べるおすすめプログラミングスクール

この運営ブログをみて、もしdtn.jp管理人のようにサイトをゼロから作ってみたいという思いに駆られた方は、サイト開発やプログラミングをオンラインで受講できるプログラミングスクールの活用をしてみてはいかがでしょうか。サーバ/WordPress/HTML/CSS/JS/PHP/SQLなどの基本さえ分かれば、ゼロからサイト立ち上げもポンポンできるようになって、今なら仕事や転職にも役立つのでオススメです。

PHPも学べるオンラインスクール

  • CodeCampAWS Cloud9を使ったクラウド上のIDEが用意されているので、ネットにつながればスタート開始可能というゴージャスなスクールです。講師も選べて、Webマスターコースならプログラミング経験0でも一気にフロントエンドからバックエンドまでマスターできます。
  • ウェブカツJava言語やRuby言語なんぞ教えん!という、初心者にありがちな挫折ポイントがよく分かってるスクールです。フロントエンドエンジニアに必要なスキルセット&PHPがマスターできます。
  • フリークス HTML/CSSから始まり、MySQLやLinuxからPHPの変数や分岐やループ、クラスやPDOに最後はMVCまで教えてくれるので、そこまで分かればなんでもできそうです。メンターに質問もし放題がいいですね。
  • テックアカデミー法人のIT研修もやってる業界最大手・受講者数No.1のスクールです。メンターとの定期オンライン面談やチャットサポートなどもあり、大手ならではインフラ環境がウリです。PHPと合わせてjQueryもマスターできる、PHP/Laravelとフロントエンドコースがおすすめです。

オンラインスクールのデメリット

孤独になりがちなサイト制作も、優しいメンターがそばにいてくれれば凄い楽しそうですが、もちろんデメリットもあります。お金がかかるという点です。ひたすらググって、本を読んでよりは確実にコストがかかってしまいます。とはいえ、多少の余裕があるなら、こんなご時世なので時間と労力を買った方が良いと思います。