サポート » インストール » PHP 7.3→7.4 に更新時にエラーが発生する

  • 解決済 ovst

    (@ovst)


    こんにちは。
    自分で色々と調べてみたのですが解決策がわからず、こちらで初めて質問させていただきます。

    ■発生事象
    レンタルサーバー管理画面にて該当ドメインのPHPを7.3→7.4に更新すると、以下のメッセージが表示される

    このサイトで重大なエラーが発生しました。

    [WordPress のトラブルシューティングについてはこちらをご覧ください。](https://ja.wordpress.org/support/article/faq-troubleshooting/)

    ※場合によっては、上記に加えて以下のメッセージが表示されることもありました。

    .header{ background-image: url(背景画像のURL); } .main{ width: 860px; } .main{ padding: 20px 29px; } .main{ border-width: 1px; } .sidebar{ width: 376px; } .wrap{ width: 1256px; } @media screen and (max-width: 1280px){

    ■やりたいこと
    該当ドメインのPHPバージョンを7.3→7.4に変更したい

    ■試したこと
    調べたところ、プラグインとの相性の問題でこの問題が発生することが多いようでした。
    そこでどのプラグインが原因か探るべく、エラーと同時に送信されるはずのメールからリカバリーモードに入ろうかと思ったのですが、そもそもメールが届いていない状態です…

    EWWW Image Optimizerが7.4に対応しておらず同様の問題に遭遇されている方が多いようでしたが、
    同プラグイン公式サイトを確認したところ、現在は7.4をサポートしているようでした。

    ■その他基本情報
    ・Wordpress バージョン: 5.8.3
    ・利用テーマ: Cocoonの子テーマ
    ・PHPバージョン: 7.3
    ・インストール済みのプラグイン (いずれも自動更新を有効化済み=最新バージョン)
    -Akismet Anti-Spam
    -All in One SEO
    -Breadcrumb NavXT
    -Classic Widget
    -EWWW Image Optimizer
    -Jetpack
    -LiteSpeed Cache
    -Really Simple SSL

    お手数ですが、解決のための知恵をお貸しいただけますと幸いです。
    何卒よろしくお願いいたします。

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • こんにちは

    まずは、原因を特定するためデバッグモードにしてエラーメッセージを確認してください。
    デバッグモードに関しては下記ページをご覧ください。デバッグモードで出力されたエラーメッセージをお知らせください。
    https://ja.wordpress.org/support/article/debugging-in-wordpress/

    参考トピック:
    PHP 7.4+Breadcrumb NavXT プラグインで設定によってはエラーになる場合があるようです。
    https://wordpress.org/support/topic/php-fatal-error-on-new-update-7-0-0/

    スレッド開始 ovst

    (@ovst)

    こんにちは。
    お返事ありがとうございます!

    大変お恥ずかしいのですが、デバッグモードにすることができておりません。。。
    「Really Simple SSL」でサイトをSSL化していることが関係しているのでしょうか…?

    ・”wp-config.php”内にて”define( ‘WP_DEBUG’, true );”とすることはわかりました。
    しかし私の環境下で上記PHPファイル内に”WP_DEBUG”という文字がありません。

    ・PHPファイルには、以下の内容が記述されていました。
    一方でファイル内には、「開発者へ: WordPress デバッグモード」といった記述はありませんでした。
    (ブラウザの利用言語の問題かファイルは英語で記載されていたのですが、
    該当する記述はありませんでした。)

    * * MySQL settings
    * * Secret key
    * * Database table prefix
    * * ABSPATH

    `

    ・試しにPHPファイル上に以下の記述を追加してみましたが、デバッグモードにはなりませんでした。
    <blockquote>
    define( ‘WP_DEBUG’, true );
    define(‘WP_DEBUG_DISPLAY’, true);
    </blockquote>

    ・現在のPHPファイルは以下の文言から始まっているので、「Really Simple SSL」がこの現象に関係しているのかも、と考えたのですが、関係ないでしょうか…?
    <blockquote>

    <?php
    
    //Begin Really Simple SSL session cookie settings
    @ini_set('session.cookie_httponly', true);
    @ini_set('session.cookie_secure', true);
    @ini_set('session.use_only_cookies', true);
    //END Really Simple SSL
    define( 'WP_CACHE', true );
    /**

    >PHP 7.4+Breadcrumb NavXT プラグインで設定によってはエラーになる場合があるようです。
    >https://wordpress.org/support/topic/php-fatal-error-on-new-update-7-0-0/
    こちらもありがとうございました。
    参考になりました。

    質問ばかりで申し訳ありません。
    ご存じでしたら、デバッグモードの入り方をご教示いただけますと幸いです。
    よろしくお願いいたします。

    しかし私の環境下で上記PHPファイル内に”WP_DEBUG”という文字がありません。

    WP_DEBUG /en は WordPress を「デバッグ」モードに切り替える際に使用する PHP の定数 ( 永続的なグローバル変数 )です。デフォルトは false で、通常は WordPress の開発環境の wp-config.php ファイル内で true に設定します。

    記述がない場合は false です。記述する必要があります。

    一方でファイル内には、「開発者へ: WordPress デバッグモード」といった記述はありませんでした。

    「開発者へ: WordPress デバッグモード」という記述が見つかりません。どちらのページを参照されていますか?

    スレッド開始 ovst

    (@ovst)

    こんばんは。

    やはり、変数が存在しない場合は追記する必要があるのですね。
    wp-config.phpに以下の記述を追加したのですが、やはりデバッグモードには入れませんでした。

    define( ‘WP_DEBUG’, true );
    define( ‘WP_DEBUG_DISPLAY’, true );
    define( ‘WP_DEBUG_LOG’, true );

    ※”WP_DEBUG_DISPLAY”も追加してログ出力も試みましたが、そもそもwp-content内に”debug.log”というファイルが生成されませんでした。

    確認なのですが、PHPアップデート時のエラーメッセージを確認したい場合、
    1.デバッグモードを有効化 (wp-config.phpを編集)
    2.PHPを7.3→7.4にアップデート
    3.サイトにアクセスし、不具合が発生するとページ上部にエラーメッセージが表示される(はず)
    という手順で問題ありませんよね…?

    >「開発者へ: WordPress デバッグモード」という記述が見つかりません。どちらのページを参照されていますか?

    デバッグモードについて解説している以下のようなブログでは、
    wp-config.php内にデフォルトで「開発者へ〜」という文章、および「define( ‘WP_DEBUG’, false);」が記載されていると書いてありました。
    「WP_DEBUG」は勿論、こうした文章も私の環境では見つかりませんでした…

    https://wp.go-sign.info/how-to-enable-wordpress-debug-mode/#co-index-0

    3.サイトにアクセスし、不具合が発生するとページ上部にエラーメッセージが表示される(はず)

    はい、「このサイトで重大なエラーが発生しました。」のメッセージが表示されれば、エラーメッセージも出力されると思います。エラーメッセージが出力されないとなると、ここでのやり取りでは少し解決するのは難しいかもしれません。専門業者に相談される事をお勧めします。

    スレッド開始 ovst

    (@ovst)

    そうなのですね…

    ちなみに「このサイトで重大なエラーが発生しました。」のメッセージが表示される際は、
    同時に以下のメッセージも出ることが多いですが、
    このメッセージだけでは原因の特定は難しそうでしょうか?

    .header{ background-image: url(背景画像のURL); } .main{ width: 860px; } .main{ padding: 20px 29px; } .main{ border-width: 1px; } .sidebar{ width: 376px; } .wrap{ width: 1256px; } @media screen and (max-width: 1280px){

    これはエラーメッセージではないので、ここから原因を特定するのは難しいです。m(__)m

    スレッド開始 ovst

    (@ovst)

    なるほど…
    そうでしたか。

    残念ですが、一旦諦めようと思います。
    色々とご丁寧にご教示くださり、本当にありがとうございました!
    助かりました。

    @ovst さん、こんにちは。

    解決済みとマークされていますが、解決はされていないようなので…

    ■やりたいこと
    該当ドメインのPHPバージョンを7.3→7.4に変更したい

    やりたいことは PHP のバージョンアップだと思いますが、

    ■試したこと

    に全プラグインの無効化が入っていません。
    もしすべてのプラグインの無効化、テーマをデフォルトに戻すを実施されていないようでしたら、実施されてみることをお勧めいたします。

    手順としては、
    1.すべてのプラグインの無効化、テーマをデフォルトに変更後、PHP のバージョンを変更
    2.エラーが出ないことを確認、この時点でエラーが発生する場合、別の場所に問題があります
    3.テーマを使用していたテーマに変更、この時点でエラーが発生する場合、テーマに問題があります
    4.プラグインをひとつずつ有効化、どのプラグインを有効化した時にエラーが発生するかでどのプラグインに問題があるか判明します

    そこでどのプラグインが原因か探るべく、エラーと同時に送信されるはずのメールからリカバリーモードに入ろうかと思ったのですが、そもそもメールが届いていない状態です…

    もしかしてですが、管理者のメールアドレスを Gmail にしていたりしませんか?最近 Gmail で Web サーバーから送信されるメールが迷惑メールもしくはそれ以前に落とされることが増えているようです。
    DNS に Web サーバーの IP アドレスで SPF レコードの設定を行うことでも多少は回避できるかも?

    ご参考になれば。

    スレッド開始 ovst

    (@ovst)

    @shokun0803 さん、こんにちは。
    アドバイスありがとうございます!

    >全プラグインの無効化が入っていません。
    >もしすべてのプラグインの無効化、テーマをデフォルトに戻すを実施されていないようでしたら、実施されてみることを>お勧めいたします。
    なるほど…
    確かにプラグインまたはテーマが原因の場合、これで原因を特定することができそうですね。
    この週末にでも試してみようと思います。

    >もしかしてですが、管理者のメールアドレスを Gmail にしていたりしませんか?最近 Gmail で Web サーバーか>ら送信されるメールが迷惑メールもしくはそれ以前に落とされることが増えているようです。
    そうです、Gmailです!
    こちらも初耳でした!
    ちょっと設定をいじってみることにします。

    貴重なアドバイスありがとうございました!

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • このトピックに返信するにはログインが必要です。