GNU/Linux >> Linux の 問題 >  >> Linux

PHP 非推奨の警告と通知を無効にする

解決策 1:

まず最初に、この質問に答えてくれた binfalse に感謝したいのですが、彼の提案では私の問題は解決されず、通知が表示され続けました.

これは、PHP には構成を設定できる場所がいくつかあるためです。これらの設定の優先順位についてはわかっていましたが、この回答で何を言おうとしているのかを確認するために、実験的にテストすることにしました。

よりグローバルなものからより具体的なものまで、これらの場所のリストを以下に示します。リストの下の方にある各設定は、前にある設定を上書きできます。

<オール>
  • php.ini 構成ファイル。 Ubuntu の場合は 2 つあり、/etc/php5/apache2/php.ini は php Apache モジュールに使用されるものです。すべての仮想ホストにグローバルな影響を与えます。

  • conf.d ディレクトリ .実際には、すべてのインストールにこのモジュール化された構成があるわけではありませんが、Ubuntu の場合、apache モジュールの /etc/php5/apache2/conf.d にあります。このディレクトリに追加されたファイルは、php.ini よりも高い優先度でメインの php.ini 構成に追加されます。つまり、ここでの設定は php.ini の設定を上書きします - 私は error.ini を追加してテストしました。すべての仮想ホストにグローバルな影響を与えます。

  • Apache 仮想ホストの構成 .通常、/etc/apache2/sites-available で設定され、すべての仮想ホストは異なる設定を持つことができます。 VirtualHost タグ内に「php_value error_reporting」を含めることができます。値は、定数に対するブール演算の数値結果です。この構成では、実際にはニーモニック定数を使用できず、数値のみを使用できます。単一の仮想ホストのみに影響します。上記の設定を上書きします。

  • .htaccess . 3 で説明したのと同じ構文を使用して、構成値、特に error_reporting 設定を .htaccess に設定することもできます。これは、.htaccess が配置されているディレクトリとすべてのサブディレクトリにのみ影響します。上記の設定をオーバーライドします。この場合、Apache を再起動する必要はありません。

  • ソース コード .この設定を変更できる最後の場所は、実行された PHP ソース内です。使用すると、以前のすべての設定が上書きされます。それがまさに私が直面していたことです。関数「error_reporting()」を呼び出すか、「ini_set("error_reporting", )」を使用して設定できます。その場合、スクリプトは実行されないため、コンパイル エラーが引き続き表示される可能性があります。

  • 解決策 2:

    /etc/php5/apache2/php.ini に変数を設定します へ

    error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
    

    これはエラーのみを表示します。


    Linux
    1. 行の発生数を並べ替えてカウントしますか?

    2. NetBIOSのテストと無効化

    3. ログローテーションの設定とトラブルシューティングの例

    1. Ubuntu16.04Linuxでの基本的なPHP7とNginxの構成

    2. MySQL、PHP、Apacheの設定ファイルを見つける方法

    3. Linux / Apache Web サーバー セグメンテーション エラーの警告

    1. 方法:DRBDのレプリケーションと構成

    2. CentOS7にApacheとPHPをインストールする

    3. phpmyadmin と suphp の実行