Migrating core server V1 to a new server and fixing Perl 5.26 incompatible, PHP 7.4 deprecated issues

⌛Time it takes to read this article: < 1 point本サイトは、レンタルサーバー GMO Digirock 社のコアサーバー(V1)にて、 Senri が管理運営しております。この度、このサーバーが以下の通り、新サーバーへのマイグレーションが決定し、より高性能なサーバーへのシステム移行が完了しました。コアサーバーは、全プランに最新システム、最大64コアの高速CPU、最大1TBの大容量メモリー、高速SSD RAIDを採用することで優れた安定性と速度を実現し、無料SSL・HTTP/3・TLS1.3にも対応しています。 マイグレーションにおける主な変更点は以下の通りです。 CPU 最大28コア ⇒ 最大64コア メモリー  最大384GB ⇒ 最大1TB PHP(デフォルト) 7.1 + FastCGI + OPcache + APCu(5.3/5.4/5.5/5.6/7.0FastCGI選択可) ⇒ 7.4+ FastCGI + OPcache + APCu(5.6/7.0/7.1/7.2/7.3/8.0/8.1FastCGI選択可) Perl(デフォルト) 5.16系 ⇒ 5.26系 MySQL(デフォルト) 5.7 ⇒ MariaDB 10.6 上記の通り、Webサーバーがハイスペックとなった事で、Webサイトの表示が飛躍的に速くなりました。これは大変喜ばしい事なのですが、新サーバーへのマイグレーションに伴い一部のCGIプログラムが動作しなくなりました。PHPに関しては、既に PHP 7.4 に対応済みであるため、問題はありませんでしたが、 Perl に関しては油断していました。Perl は、アクセスカウンタやアクセス集計、掲示板、ランチャーなどの CGIプログラムが動作しています。調査したところ、当サイトでの Perl 5.26 に関する非互換箇所は、以下の通りでした。いずれも、 500 ERROR が発生します。 セキュリティ問題により、カレントディレクトリを示す以下の表記がエラー扱いになる$thisfile = ‘./cgi.cgi’; 日本語変換ライブラリ jcode.pl が Perl 5.26 で動作しないrequire ‘./jcode.pl’; この問題に関しては、それぞれ以下のように対応することで解決しました。 カレントディレクトリの指定 以下の1行を追加します。 use lib "."; $thisfile = './cgi.cgi'; jcode.pl の非互換問題 jcode.pl に代わる日本語変換ライブラリ jacode.pl を導入し、以下のように呼び出し部分を変更する。jacode.pl の最新版は、jacode-2.13.4.18 よりダウンロードできます。 require './jacode.pl'; # JISコード変換 jacode::convert(\$mbody,'jis','sjis'); 以上、取りあえず、表面上の表示は正常になりましたが、未だ、全プログラムの検証は終えていないため、引き続きテストを行っていく予定です。 新サーバーへのマイグレーションで絵文字など、4Bコード(utf8mb4)を含む記事を更新するとエラーになる件 2022.06.10 追記 新サーバーへのマイグレーション後、絵文字などの4Bコード(utf8mb4)を含む記事を更新すると、以下のエラーが出て記事が更新できなくなりました。 更新に失敗しました。データベースの投稿を更新できませんでした。 こちらで何度か、DBの修復を試みましたが、上手くいきませんでした。 止むを得ず、コアサーバーのサポートへ連絡し、マイグレーション前のDBで修復を依頼しました。しかし、結果は NG でした。そこで、色々と試行錯誤したところ、以下の方法で無事、DBの修復ができました!絵文字を入力し、更新もできるようになりました。 1.「phpMyAdmin」にログイン ⇒ 変更したいデータベース名を選択2.ヘッダーの「操作」タブを選択 ⇒ 「照合順序」と書かれている箇所を見る。3.照合順序で “utf8mb4_general_ci” を指定し「実行」をクリック * 本件につきましては、以下の WordPress サポートフォーラムにもトピックをアップしておりますが、検証後、問題がないようでしたら、このスレッドはクローズする予定です。 * 対応する記事は、以下の通りです。 2022.06.30 追記 PHP 7.4 非推奨 / PHP 8.0 非互換問題 以下の記事へ加筆した内容を再掲します。WordPress プラグインの中で、PHP 7.4 で非推奨、PHP 8.0 で廃止される関数が見つかりました。 PHP 7.4 の環境において、デバッグモードで実行した際、以下のワーニングを確認しています。 [28-Nov-2021 05:19:48 UTC] PHP Deprecated: join(): Passing glue… read more "

コアサーバーでSSL証明書の更新をしくじり、サーバーがダウン & SSL証明書の発行者名がESETになっていた件

⌛Time it takes to read this article: 2 pointコアサーバーの無料SSL証明書が有効期限切れになってしまった場合への対処とセキュリティーソフトのESETをインストールした後、ブラウザでSSL証明書の発行者名がESETになってしまう事への対処方法を纏めました。

The website builder has been upgraded to hpb22, but the WordPress function has not been updated for more than 5 years (WP5.5 incompatible / Google Analytics 4 incompatible / SSL incompatible etc.) - hpb Dashboard repair

⌛Time it takes to read this article: 3 pointホームページビルダーがhpb22へバージョンアップしましたが、WordPress機能は放置されたままなので、その対処方法を解説します… hpbダッシュボードのプラグインがWP5.5非互換/Google検索ぱんくずリスト問題/SSL化問題など

Discarded item Windows XP laptop (MSI U100) with memory expansion and renovation to Windows 10

⌛Time it takes to read this article: 3 point10年位前に発売された台湾のMSI社製の古いノートパソコン「Wind Netbook U100」をWindows XPからWindows 10のマシンへリノベーションしました。内蔵メモリーを1GB追加し、ブラウザもアップグレードしました。

Successfully converted to SSL for WordPress sites and handed over Facebook likes! (Core Server)

⌛Time it takes to read this article: 4 pointコアサーバーにおけるWordPressサイトのSSL化とFacebook「いいね!」数の引継ぎ方法を詳しく解説します。

本サイトのSSL化が完了

⌛Time it takes to read this article: < 1 point兼ねてからの懸案事項であった当サイトのSSL化の作業が完了しました! SSLとは「Secure Sockets Layer」の略であり、SSL化とは、これまでWWWのプロトコルが非暗号化通信(http:)だったものを暗号化通信(https:)に変える事を指します。実際の通信プロトコルは、SSLでは無く、「TLS 1.2/1.3」での暗号化通信となります。 ネットスケープ時代のSSLプロトコルは、セキュリティが破られたため、消滅しています。 現在、WebサイトのSSL化は当たり前となっているため今更感はありますが、これによりWebサイトの信頼性が高まり、多少なりともGoogleのSEO評価の向上も期待できるかと思います。 なお、SSL化に伴い、新URLとなったブログ内に設定されたソーシャルボタンでFacebookの「いいね!」数が0にリセットされてしまったため、Facebookの「いいね!」数を復元するためのプログラム修正も行いました。 但し、Facebookのクローラーが全てのブログに対して、新URLのOGP情報をスクレイピングするには時間が掛かるものと思われます。 (サーバ上の”.htaccess”にてFacebookのクローラーだけは、301リダイレクトをしないように設定済み) よって、スクレイピングに関しては、FacebookのDevelopers ToolであるFacebook Open Graph Object Debuggerを用い優先するブログから順番に手動で強制的にスクレイピングを行い「いいね!」数の復元作業を行っております。 なお、テーマのプログラムのOGPタグ(”og:image”など)の生成方法が古く、Facebookの仕様に対応していない事が判明したため、現在、当該プログラムの修正作業中です。 全ての作業が終了するには、もう暫く時間が掛かりそうですが、これら一連の作業の詳細につきましては、以下のブログに纏めておりますので、ご興味のある方はご覧下さいませ。 2020.04.04 追記 サーバーのメンテナンス作業が全て完了しました。

The mystery of search keywords disappearing

⌛Time it takes to read this article: < 1 pointそういえば、Google Analyticsを眺めていて気が付いた事ですが、何故かアクセス解析の結果に検索キーワードが含まれていません。 何故だろうかと思い、ググってみたら、とあるブログ「検索キーワードが追えなくなる…ノーリファラー対策はあるのか? 」にその理由が書かれていました。 つまり、Googleが2011年10月に検索自体をSSL暗号化してしまったため、Google経由で訪問してきたユーザーの検索キーワードが取得できなくなってしまったことが原因 だそうです。Webマスターからすれば、この情報が一番知りたいところなんですが、これじゃアクセス解析なんかやってもあまり意味が無いような気がしました。 Yahoo!,Bingとか他の検索エンジンもこの方向なんでしょうかねぇ(–;)