PLAZAコーディネータの皆様
UMINセンター
PHPのバージョンアップ完了のお知らせ
日頃よりPLAZAサービスをご活用いただき誠にありがとうございます。
過日より案内をしておりましたPHP8.1系へのアップデートに関しまして、
予定通りに完了いたしましたことご報告申し上げます。PHP8.1運用開始日 2024年2月26日月曜日13時30分
※旧バージョン(PHP5.6系)の運用は終了いたしました。
2月26日(月) 14:10 UMINセンターからのメールより
このPHPバージョンアップに伴い、主にバーチャルホスト機能(http://アカウント.umin.jp/など)を使用している方を対象に、ウェブサイトが表示されなくなった方々を散見します。これまでの事例から現状での対応方法をまとめてみました。
ケース1: アクセスできないと表示される
ケース2: データベース接続確立エラーの表示が出る
ケース1、2の対処法はほぼ同じ流れで作業することになりますので、まとめて解説します。原因としては、PHPのセキュリティの問題だと思うのですが、バーチャルホスト機能のURLのまま、WordPressやMySQLにアクセスできなくなっています。
対処法
1. SFTP ソフトウェアでアクセスする
Cyberduck などのソフトウェアでUMINサーバーにアクセスします。
Cyberduckであれば、新規接続 > SFTP (SSHによる暗号化FTP) に進み
サーバ: plaza.umin.ac.jp
ポート: 22
ユーザ名: アカウント名
パスワード: 開設通知書にあるパスワード
Code language: CSS (css)
2. wp-cofig.php のファイルをエディタで開く
/home/{{アカウント名}}/public_html 直下 もしくは /home/{{アカウント名}}/public_html/wordpress などのサブフォルダに移動して、wp-cofig.php を編集する。Cyberduckであれば、右クリックでエディタを指定できる。Windowsのメモ帳ではうまくいかないので、VisualStudioCodeなどのエディタを使用してください。必ず UTF-8 の BOM なし (UTF-8N) で保存するようにしてください。
3. WP_SITEURLを明示、WP_HOMEを明示
line 27 あたりの
// ** MySQL 設定 - この情報はホスティング先から入手してください。 ** //
Code language: JSON / JSON with Comments (json)
下あたりに以下のコードを追加してください。
define( 'WP_HOME', 'https://plaza.umin.ac.jp/{{アカウント名}}/wordpress' );
define( 'WP_SITEURL', 'https://plaza.umin.ac.jp/{{アカウント名}}/wordpress' );
Code language: JavaScript (javascript)
index.phpを置いているディレクトリを指定します。右端にスラッシュは不要です。これは、WordPressの設定 > 一般 にある、WordPress アドレス (WP_HOME) と サイトアドレス (WP_SITEURL) をあらかじめ設定しています。
もし、もともとWordPress アドレスと サイトアドレスを別に設定している場合は、以前のとおりにしてください。バーチャルホストアドレスではなく、https://plaza.umin.ac.jp/{{アカウント名}} によるpathをしていしているところが重要です。
例: http://shoei05.umin.jp/wordpress をメインページにしていた場合
define( 'WP_HOME', 'https://plaza.umin.ac.jp/shoei05/wordpress' );
define( 'WP_SITEURL', 'https://plaza.umin.ac.jp/shoei05/wordpress' );
Code language: JavaScript (javascript)
例: http://shoei05.umin.jp/wordpressにwordperss資料を入れていて、http://shoei05.umin.jp/ をメインページにしていた場合
define( 'WP_HOME', 'https://plaza.umin.ac.jp/shoei05' );
define( 'WP_SITEURL', 'https://plaza.umin.ac.jp/shoei05/wordpress' );
Code language: JavaScript (javascript)
4. wp-cofig.php の MySQL のホスト名 を確認する
define('DB_HOST', 'ホスト名:ポート番号' );
Code language: JavaScript (javascript)
と指定している場合は、以下のように設定を変更します。
define('DB_HOST', 'localhost:MySQLのソケットファイルpath' );
Code language: JavaScript (javascript)
MySQLのソケットファイルのpathについては、同ディレクトリの .htaccess ファイルを確認してください。
php_value mysql.default_socket /home/{{アカウント名}}/・・・.sock
とpathが指定されているはずです。
例 shoei05 アカウント名で、ソケットファイルの場所が /home/shoei05/folder1/mysql.sock の場合
define('DB_HOST', 'localhost:/home/shoei05/folder1/mysql.sock' );
Code language: JavaScript (javascript)
5. wp-cofig.phpを保存
ここまで設定したら、wp-cofig.phpを保存してください。
6. 管理ページにアクセス
ここまでで、管理ページにアクセスできるようになっているはずです。デフォルトでは、https://plaza.umin.ac.jp/{{アカウント名}}/wordpress/wp-admin にアクセスしてください。 wordpress のディレクトリ名を変更している場合やその他変更している場合は合わせて行なってください。
7. パーマリンクの更新
設定 > パーマリンク からそのまま設定を保存を押してください。
下記のようなエラー表示が出る場合は、WP_SITEURL、WP_HOMEで明示しているディレクトリにある .htaccess ファイル を書き換えて、保存してから、「変更を保存」を押してください。
8. リンクの編集
個人的な印象としては、セキュリティの関係もあり、今後バーチャルホストのままWordPressを使い続けることは難しいように思っています。7. のパーマリンク更新で自動生成されるリンクは更新がなされているはずですが、ブログ記事上に直リンクでリンク設定をしているものについては、順次 http:///{{アカウント名}}.umin.jp/ としている部分を https://plaza.umin.ac.jp/{{アカウント名}}/ へ書き換えてください。
ケース3: 「重大なエラーが発生した」と表示される
1. 上記のケース1-2の1-5までは同様に行う
2. プラグインとテーマを一時的に使用不能にする
この表示は、アップデートされたphpがプラグインやテーマ(主にテーマな印象)が互換性の問題で悪さをしているようです。上記のケース1-2の1-5までは同様に行ったのちに、以下の手順でプラグインやテーマを一時的に使用を止めてください。
wp-content > にある plugins と themes の名前を変更する。
何でもよいので、pluginsとthemesの名前を変更するだけで中にあるテーマを一括で使用不能にすることができます。plugins2 や thmes2 などでも良いので名前を変更してください。
3. 管理ページにアクセス
ここの段階で管理ページにアクセスできると思います。デフォルトでは、https://plaza.umin.ac.jp/{{アカウント名}}/wordpress/wp-admin にアクセスしてください。 wordpress のディレクトリ名を変更している場合やその他変更している場合は合わせて行なってください。
http:///{{アカウント名}}.umin.jp/ ではなく https://plaza.umin.ac.jp/{{アカウント名}}/ なので、注意してください。
4. プラグインなのか、テーマなのか原因を確認する
さきほど変更したファイル名を一つづつ変更してどこに原因があるかみていきます。
手順1: プラグインの plugins2 → plugins に名前を戻してから、管理画面をリロード
→ 問題がない場合は、プラグインに問題はありません。
→ 再度管理画面が表示されなくなったら、一括ではなく、一つづつ プラグインを無効にして問題のプラグインを同定していきます。plugins の中のディレクトリを一つづつ名前変更して、管理画面リロードを繰り返してください。
手順2: テーマの theme2 → theme に名前を戻してから、管理画面をリロード
→ 問題がない場合は、テーマに問題はありません。
→ 再度管理画面が表示されなくなったら、現在設定しているテーマに問題があります。
管理画面 > 外観 > テーマ
このテーマは残念ながらphpアップデートの影響で使えないテーマである可能性が高いです。theme2 → theme へ名前を残し、theme > 該当のテーマ名ディレクトリの名前を変更もしくは削除して管理画面をリロードしてください。その他のテーマを選択してください。
5. パーマリンクの更新、リンクの調整
上記ページの 7. パーマリンクの更新、8. リンクの編集を行なってください。
大まかに現時点でわかっている内容を記載いたしました。ご参考になれば幸いです。