データ移行の始まりです。

サーバのPHPのバージョンアップに伴い、旧ブログが使えなくなった。それに伴いひっそりと使っていたこちらをメインに置き換え、旧ブログは事実上閉鎖となった(まぁみられるんだけど)。

じゃあ、昔の記事は? というと、 移行ツールなどのものは存在しないので、 ゆっくりとコピペで移行するしかない。。。

少し試してみたが、今はなきG-ToolsでAmazonの商品紹介の画像が何をしても表示されない。サービス終了しているので新たに作ることもできないしね。

商品へのリンク自体は生きているので、画像なしでソースを移行するしかなさそう。勝手に画像をダウンロードして、掲載するのはダメな気もするので、これはしょうがないのかな…。

まぁ、時間をかけてやってみたいと思います。(自分のブログのことも考えないと)


WordPressのcocoonテーマでエラーが出る

WordPressのcocoonテーマで、下記のエラーが表示される。

/wp-content/themes/cocoon-master/lib/open-graph.php(356)

調べると、curlを使った処理でエラーになっていた。PHPのモジュールでcurlが入っているかみたところ、インストールされていなかった。FreeBSDのパッケージからcurlのモジュールをインストールして、apacheを再起動した。これで、解決した。

 pkg install php73-curl

WordPressで、xml_parser_create()のエラーが発生した

PHPをPHP5.6からPHP7.3に上げたところ、Wordpressで以下のエラーが発生した。

Fatal error: Uncaught Error: Call to undefined function xml_parser_create()

PHPのオプションで、xmlに関するモジュールがインストールされていないことが原因だった。FreeBSDでパッケージからインストールしているので、下記のようにpkgコマンドでインストール。その後、Apacheを再起動し、無事にエラーは解消。

pkg install php73-xml-7.3.8 

php56からphp73にあげたら、pukiwikiのRSSリーダーでエラー

PHP5.6からPHP7.3にアップデートしたところ、pukiwikiでエラーが発生。このエラーの前に、pukiwikiはPHP7対応版の1.5.2にバージョンアップした。アップグレード用のパッチを当てたが、それでも下記のエラーが発生した。

Parse error: syntax error, unexpected 'new' (T_NEW) in /usr/xxxxxx/xxxxxx/wiki/plugin/rssreader.inc.php on line 56

エラーを調べてみると、PHP7では「NEWで生成されたオブジェクトは参照として代入できない」ので、エラーになっていることが判明。とりあえず、動作するようにしたかったので、参照渡しをやめるようにコードを変更した。

変更した記述は、下記。

   //変更前
   //$r =& new XML_RSS($rdf);
   //変更後 =& を = に変更。エラー原因の参照渡しをやめている。
   $r = new XML_RSS($rdf);

参考

https://www.shirokuma-systems.com/seisaku/wordpress/284.html
https://www.slideshare.net/yohgaki/php56php70

VSCodeのCisco用のコマンドモード

Visual Studio CodeにCiscoのシンタックスを解釈できるようにするExtension。下記のエクステンションのページからインストールボタンを押して、インストールする。

vscode-cisco-syntax
https://marketplace.visualstudio.com/items?itemName=jamiewoodio.cisco

インストール後は、言語モードの選択で「cisco」と指定する。そうすると、Ciscoのシンタックスで色付けなどをしてくれる。

コンフィグをみるときのサポートくらいに使える。

ELB+ACMでSSL通信を行うときのメリット・デメリット

AWSで、SSL通信を行う設定をすることになったので、ELB(Elastic Load Balancer)+ACM(Amazon Certificate Manager)でSSLを通信を行うときのメリット・デメリットを考えてみた。癖はあったけれど、驚くほど設定が簡単。

デメリット

  • ELBのコストがかかる、ELBは従量課金
  • ELB経由で、アクセスするためには、ELBのアドレスをCNAMEで指定する必要がある(ELBのIPアドレスは変動するから)
  • ELBでSSL通信がオフロードされるので、アプリケーション側の対応が必要(Wordpressだと、追加設定必要だった)

メリット

  • ELBがSSL通信の終端になる
  • ELBがSSLのオフロードをしてくれるので、EC2側のSSL設定はいらない
  • EC2にSSL設定をしないので、OpenSSLの脆弱性と闘わなくていい(アップデートの手間が軽減される)
  • Amazon発行のSSL証明書が無料で使える(ELBにはコストがかかる)
  • ELBを使用するので、スケールアウトが用意になる
  • 証明書の設定が簡単にできる(認証キーとかの知識もいらないので楽ちん)

WordPress 5.2.1へのアップデートで不具合

別のサイトで、Wordpress 5.2.1にアップデートしたところ、新規投稿画面と編集画面にアクセスすると、真っ白になるようになった。

Webサーバのログも見たが、これと言ったエラーも出ていない。念のため、Webサーバのサービスも再起動したが変わらず。一応、5.2.1の再インストールも行なったが変わらず。そんなわけで、とりあえず、放置。新しいアップデート待ち。

忘れた頃に、不具合を引くなぁ。アップデートする際には、気をつけた方がよいかも。

今日はエイプリルフール

巷では、新元号 新元号と騒いでいるが、昔から今日は、エイプリルフールだ。

ということで、久しぶりにPHPのinfo画面を見てみたら、エイプリルフールモードになっていた(多分バージョンの違いはあるかもしれないが、同じバージョンならば毎年同じだろうな)

いつもと変わっているのは、右上のアイコン

いつもは右上にphpと表示されるが

今日に限ってはこれだ。(意味はわからない…)

他にも、色々とエイプリルフールがおこなれているかもしれない、新元号が発表されるまで、色々探してみるといいかもしれない。