5/16(月)、コアサーバー(coreserver.jp)で最新高速サーバーへの移転メンテナンスが行われた結果、Movable Type 5で、ログインが出来なくなりました。
ログイン不可の症状は、たった一行表示のみ。
『Got an error: Unescaped left brace in regex is illegal here in regex; marked by <- HERE in m/{{ <- HERE support}}/?/』
仕方が無いので検索すると、
★本家Perl?のWebページ「perldiag - さまざまな Perl 診断メッセージ」(https://perldoc.jp/docs/perl/5.28.0/perldiag.pod)に解説が有りました。
Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/%s/
(F) 正規表現中で リテラルな "{" 文字 (U+007B LEFT CURLY BRACKET) にマッチングしたいときに 覚えておくべき単純な規則は、何らかの方法で それぞれのリテラルな実体をエスケープすることです。 一般的に一番簡単なのは、"\{" のように逆スラッシュを前置するか、 かっこでかこむ ("[{]") ことです。. パターン区切り文字も中かっこの場合、マッチングする右中かっこ ("}") も、パーサーの混乱を避けるためにエスケープするべきです; 例えば:
qr{abc\{def\}ghi}
リテラルな "{" 文字にエスケープを強制することにより、 将来のリリースで様々な方法で Perl 言語を拡張できるようになります。 既存のコードを不必要に壊すことを避けるために、 拡張が "{" をリテラルとして使うことと競合しそうにない文脈では 制限は強制されません。
★CORESERVERの運営元 バリューサーバー【サーバーシステムの増強と移行について】のページには、対処法のQ&Aが有りました(https://www.value-server.com/info/brandnew2022.html)。
Q:Movable Typeで「Got an error: Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/{{ <-- HERE support}}/?/」が発生しました。
A:こちらのファイルを下記のように修正の上、正常に動作するかご確認下さい。 /virtual/アカウント名/public_html/ドメイン名/lib/MT/App/CMS.pm
4828行目
$css =~ s#{{support}}/?#$app->support_directory_url#ie;
↓
$css =~ s#\{\{support}}/?#$app->support_directory_url#ie;
4830行目
$css =~ s#{{theme_static}}/?#$theme->static_file_url#ie;
↓
$css =~ s#\{\{theme_static}}/?#$theme->static_file_url#ie;
ただ、何行目かは、それぞれお使いのMovable Typeのバージョンによって異なる様です。
<使用中のMTOS5は、4976行目と 4978行目>
★CORESERVER補足情報
・修正ファイルの場所
/public_html/設置したMTのディレクトリ名/lib/MT/App/CMS.pm